Mamy ten problem pojawia się sporadycznie, ale teraz mogę go odtworzyć za każdym razem. Zwiększam licznik wyświetleń na moich niestandardowych forach wbudowanych, co powoduje błąd:NHibernate.LazyInitializationException
NHibernate.LazyInitializationException: failed to lazily initialize a collection, no session or session was closed
Ten błąd występuje w innej kolekcji w obiekcie. Jeśli dodam:
.Not.LazyLoad()
Do mojego Fluent mapowania, przesunięcia błędach wokół mojego projektu. Ciągle wyłączyć leniwy załadunku na obiektach intil idzie do miejsca, gdzie nie było leniwy załadunku, a potem wyrzucił ten błąd:
NHibernate.LazyInitializationException: Could not initialize proxy - no Session.
Tak więc wyjąłem niezapominajki na mój leniwy załadunku i teraz” m z powrotem do kwadratu. Występują tylko błędy podczas zwiększania tego licznika widoku. Oto fragment z mojej klasy bazowej zapisać kod:
using (ISession session = GetSession())
using (ITransaction tx = session.BeginTransaction())
{
session.SaveOrUpdate(entity);
tx.Commit();
}
rozglądając się, czytałem w innym wątku, że transakcje mogą powodować problem, ale to ze względu na to, gdzie zostały one umieszczone. Ten kod jest rozszerzony na klasy, które są oddzielone od moich obiektów domenowych (klas repozytoriów). Oto wpis:
hibernate: LazyInitializationException: could not initialize proxy
Nie wierzę, że to mój problem tutaj. Oto moje płynne mapowanie dla pierwszej kolekcji, która rzuca błąd. Istnieje kilka innych podobnych kolekcji.
HasManyToMany(x => x.Votes)
.WithTableName("PostVotes")
.WithParentKeyColumn("PostId")
.WithChildKeyColumn("VoteId");
http://stackoverflow.com/questions/1117633/do-i-have-to-close-sessions-w-castles-isessionmanager-for-nhibernate Moje pytanie jest podobne. –