2010-01-12 315 views
3

有沒有一種情況下,優先加載比延遲加載更受歡迎?延遲加載

+0

在將其傳遞到另一圖層之前,您可能需要完整填充的對象圖。延遲加載只能在ISession的上下文中使用。對於聚合,任何子對象都將與父對象一起加載。 – David 2010-01-12 18:14:18

+0

@David:請將答案發布爲答案,以便我們可以正確地對其進行提示。 – 2010-01-12 18:17:15

回答

2

在將其傳遞到另一層之前,您可能需要完全填充的對象圖,即使用NHibernate引用的分離實例時。

延遲加載只能在ISession的上下文中使用。對於聚合,任何子對象通常都會與父對象一起加載,但是您可能會遇到一些情況,在加載子對象時尤其如此,因爲它們不需要執行任何要處理的對象。

0

我能想到的就是當一個子類在每次檢索到父項時更常被訪問的情況。

0

是的,當您需要在獲取後立即使用數據。

1

大多數「報告」需要大量數據才能彙總。當你已經知道你需要幾乎所有的東西時,爲什麼個人會提取。

一般來說,用於導出到數據倉庫或其他系統的「提取」將受益於急切的加載。