У меня есть класс базы на моей карте, он унаследовал два новых классаПопытка получить доступ к полю типа дискриминатора в NHibernate
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="Business" namespace="Business.Test">
<class name="BaseExample" table="base_example" abstract="true" discriminator-value="0">
<id name="Id" column="id" type="Int64" unsaved-value="0">
<generator class="native"/>
</id>
<discriminator column="domain" type="Int16" not-null="true" force="true" />
....
....
</class>
</hibernate-mapping>
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="Business" namespace="Business.Test">
<subclass name="Example1" extends="BaseExample" discriminator-value="1">
....
....
</subclass>
</hibernate-mapping>
все работает отлично, но если я задам для этого поля, например:
var Clients = ClientFactory.GetAll().Where(c => c.UserData.BaseExample.Domain == 1);
бросить это исключение: Сообщение исключения: не удалось разрешить свойство: Домен: Business.Entities.BaseExample
, как можно сказать, если это того или иного класса?
Также на вашем классе я бы включил: - 'public int Domain {get; защищенный набор;} ' – Rippo
, который был бы полезен, если вы хотите, чтобы он был видимым в коде приложения, но не требуется, если вы хотите его только для запросов. – Jaguar
Вам нужен сеттер для полностью отображаемого свойства? – Rippo