Najpierw użyj bazy danych EF5. Po utworzeniu kontekstu ustawiam ContextOptions.LazyLoadingEnabled
na true
. Coś się dzieje, aby to zmienić na false
(nigdzie w naszym kodzie nie jest to ustawienie zmienione).Co oznacza ustawienie opcji LazyLoadingEnabled na wartość false w kontekście EF?
W różnych punktach sprawdzam, czy nadal jest to za pomocą kodu this snippet (uzyskanie kontekstu z obiektu encji). Problem pojawia się tylko podczas uruchamiania wielu wątków (ładuj niektóre encje, a następnie przeprowadź je przez wielowątkowy kod). Nie występuje w żadnym spójnym punkcie kodu, więc niemożliwe jest ustalenie, co dokładnie powoduje to.
Chyba mam tylko nadzieję, że ktoś może wiedzieć więcej na temat wewnętrznego działania EF i dać mi wskazówkę ...
Dlaczego nie używasz 'DbContextConfiguation.LazyLoadingEnabled'? Chociaż, być może jest to po prostu wrapper dla 'ContextOptions.LazyLoadingEnabled' tak czy inaczej. –
Myślę, że to tylko opakowanie. Zostało to uaktualnione z EF4, więc stary sposób jest prawdopodobnie po prostu kompatybilny wstecz. – dudeNumber4
Mam ten sam problem w EF 4 http://stackoverflow.com/questions/15374758/lazyloadingenabled-being-to-set-to-false-mid-query-for-one-id-only – bdwain