Итак, я застрял с этой установкой ... гипотетический бы класс с реестром детей, и есть два типа детей: мальчик & девочкаMapping Коллекция родовых объектов NHibernate
public class ClassRoster
{
public IList<Child> Children{get;set;}
}
public abstract class Child
{
public string Sex {get;}
}
pubic class Boy
: Child
{
public override string Sex { get { return "M"; } }
}
public class Girl
: Child
{
public override string Sex { get { return "F"; } }
}
(скорее всего, это плохой пример) ... когда я иду, чтобы получить список дочерних элементов из db, мне нужно указать значение дискриминатора для коллекции или nHibernate использовать сопоставление, которое я сделал для Child/Мальчик/девочка уже?
Я понимаю, что, когда я делаю это аналогично для проекта, над которым я работаю, я получаю исключение WrongClassException из nHibernate.
Я чувствую, что это недостаточно ясно. В моем проекте у меня уже обработано сопоставление, которое я могу вызвать в базу данных, и вытащить список детей, и он отображает мальчиков и девочек, как ожидалось. То, что я пытаюсь сделать, - это вызвать список классов и получить список детей, в которых собраны все мальчики и девочки.
Плохо то, что вы используете строку в плохом виде, insatead этого типа перечисления. –
Хорошо ... так что это реалистично переименование в «реальной» реализации. Я спрашиваю конкретно, когда я начерчиваю общий тип «ребенок», мне нужно затем рассказать сумке, как сформировать девушку и как сформировать мальчика, или я подхожу к этому все неправильно? –
Масштабирование будет очень полезным. Потому что загрузка сумки не должна вызывать никаких проблем. Что касается разрешения объектов на него, то отвечает disriminator для класса Child –