Nie mogłem znaleźć odpowiedzi na ten problem, więc zakładam, że jest to coś, co robię źle.Fluent NHibernate LazyLoad Issues
Mam PersistenceModel skonfigurować gdzie mam ustawić konwencję w następujący sposób: -
persistenceModel.Conventions.Add(DefaultLazy.Always());
Jednak dla jednej z relacji HasManyToMany w jednym z moich jednostek chcę chętny ładowania odbędzie której jestem utworzenie w następujący sposób: -
HasManyToMany(x => x.Affiliates).Not.LazyLoad();
Intuicyjnie spodziewam chętny ładowanie się odbyć jak ja nadpisanie domyślnego obciążenia leniwy, że mam określony jako konwencja, ale nadal leniwych obciążenia. Jeśli ustawię konwencję DefaultLazy, aby nigdy, a następnie ustawiać LazyLoad na indywidualnej relacji, to również nie działa.
Wszelkie pomysły?
Przepraszamy, usunąłem części kodu, które uważałem za nieistotne. Mam również .FetchType.Join() i wyłączanie leniwego ładowania nadal nie działa. Jedynym sposobem na wyłączenie leniwego ładowania okazało się, że działa dla mnie to ustawienie konwencji. – Dotnet
Dodałem konwencję DefaultLazy.Always(), a relacja HasManyToMany() poprawnie ładuje się, gdy zastosuje się metodę Fetch.Join(). Możesz pobrać moją próbkę z GitHub tutaj: https://github.com/JamesKovacs/JamesKovacs.StackOverflow/tree/master/FluentNhHacking/ –
W porządku, cóż, prawie naśladowałem twój kod w mojej sytuacji i nadal nie działał, więc muszę się bliżej przyjrzeć. Używam .ShowSql() w celu ustalenia, czy kwerendy zostały uruchomione leniwie lub niecierpliwie, które uważam za dokładne? – Dotnet