Я не мог найти ответ на этот вопрос, поэтому я предполагаю, что это то, что я делаю неправильно.Fluent NHibernate Проблемы с LazyLoad
У меня есть PersistenceModel установить там, где я поставил конвенции следующим образом: -
persistenceModel.Conventions.Add(DefaultLazy.Always());
Однако для одного из HasManyToMany отношений в одном из моих образований я хочу жадную загрузку занять место которой я настройки следующим образом: -
HasManyToMany(x => x.Affiliates).Not.LazyLoad();
Наглядно, я ожидаю, жадная загрузка пройдет как я перекрывая ленивый по умолчанию нагрузки, я указанный в качестве конвенции, но она до сих пор ленивые нагрузки. Если я устанавливаю соглашение DefaultLazy никогда и не устанавливаю LazyLoad в отдельных отношениях, он тоже не работает.
Любые идеи?
Извините, я удалил части кода, которые, как я думал, не имеют отношения к делу. У меня тоже есть .FetchType.Join() и отключение ленивой загрузки все равно не работает. Единственный способ отключить ленивую загрузку Я нашел, что работает для меня, устанавливая соглашение. – Dotnet
Я добавил соглашение DefaultLazy.Always(), и отношение HasManyToMany() корректно загружается при применении Fetch.Join(). Вы можете взять мой образец из GitHub здесь: https://github.com/JamesKovacs/JamesKovacs.StackOverflow/tree/master/FluentNhHacking/ –
Хорошо, я в значительной степени передразнил ваш код в моей ситуации, и он все еще не работает, поэтому мне придется поближе познакомиться. Я использую .ShowSql(), чтобы определить, были ли запросы запущены лениво или нетерпеливо, что я считаю точным? – Dotnet