2010-09-11 28 views
1

我想將我的對象存儲在ASP.NET Session中。這個對象有一些懶加載的屬性。當我回發到我的頁面並從Session獲取我的對象時,此屬性引發LazyInitializationException。我可以重新綁定這個對象來創建Nhibernate Session來檢索這個屬性,或者我必須創建Session並在每個請求中獲取這個對象?ASP.NET + Nhibernate對象重新綁定到會話

回答

1

在發送SQL查詢時,您需要熱切地獲取這些對象,以便在下一次請求時從會話中填充和訪問它們。一旦用於檢索父對象的會話關閉,您將無法再獲取它們。

+0

我不想讓他們熱切地告訴他們,因爲他們是相當大的。所以,據我所知,我需要在每個請求中獲取這個對象。謝謝 – Tror 2010-09-11 08:33:22

+0

但是,如果您打算將它存儲到ASP.NET會話中,爲什麼要在每個請求中獲取它?爲什麼不一次獲取整個對象然後緩存呢? – 2010-09-11 08:40:01

+0

也許我做錯了什麼?但某些對象可能包含超過10000個子對象。 – Tror 2010-09-11 09:00:53