Я использую NH 3.0 и FNH 1.1, перекомпилированные с NH3.NHibernate: не удается успешно загрузить
У меня есть модель пользователя, где я хочу всегда получать ее профиль при загрузке. Я использую провайдера linq из NH3, но не могу использовать его метод Fetch (из-за моего репозитория, который скрывает NHibernate и возвращает IQueryable, и тот факт, что ToPagedList вызывается в запросе, поэтому я не могу помещать Fetch в качестве последнего вызова запроса).
В UserMap я установил:
HasOne(x => x.Profile)
.Not.LazyLoad()
.Cascade.All();
Но установка LazyLoad в положение OFF не помогает. Я тоже играл с режимом выборки.
Мое предположение заключается в том, что если я определяю это сопоставление, то мне даже не нужно указывать Linq, что я хочу получить профиль, когда запрашивается пользовательский объект. Линк должен соблюдать картографию, нет?
hmmm ... Я думал, что 1-к-1 всегда были нетерпеливы ... на самом деле я помню, что не мог лениться загрузить 1 к 1. Это изменилось с NH3? – dotjoe
Моя ссылка - NH Profiler. Я вижу 2 запроса, один выбирает для пользователя и один выбирает для профиля. Должен признаться, я не смотрел на это, когда я использовал NH2. –