Помогите мне решить одну проблему.Nhibernate linq fetch в подклассе
У меня есть проект, который использует Nhibernate и Fluent Nhibernate. Там я создал один базовый класс (это не реальные классы, но они описывают мою ситуацию):
public class Document
{
public virtual int Id { get; private set; }
public virtual Account Acc { get; private set; }
}
и картографирование для него:
public class DocumentMap: ProfileEntityMap<Document>
{
public DocumentMap()
{
Id(m => m.Id);
References(m => m.Acc);
DiscriminateSubClassesOnColumn("Type");
}
}
Тогда я реализовал подкласс:
public class PaymentDocument: Document
{
public virtual Card AccountCard { get; set;}
}
Составление карт для класса PaymentDocument:
public class PaymentDocumentMap : SubclassMap<PaymentDocument>
{
public PaymentDocumentMap()
{
References(t => t.AccountCard);
}
}
И после того, что я пытаюсь выполнить этот запрос:
payments = session.Query<PaymentDocument>()
.Fetch(t => t.Acc)
.Fetch(t => t.AccountCard)
.ToList();
И когда я вставляю первую выборку я получаю следующее исключение:
ссылка на объект не указывает на экземпляр объекта.
Может кто-нибудь ответить мне, где проблема?
Вы установили любую точку останова и отлаживаете свой код? – TalentTuner
Я комментирую строку с .Fetch (t => t.Acc). Запрос выполняется без него. Исключение происходит в источнике NHibernate. – Dmitry