2013-02-25 30 views
-1

我想通過一個簡單的例子來簡單介紹一下關於實體框架中的延遲加載。任何人都可以解釋在實體框架中的延遲加載?

  • 爲什麼我們使用延遲加載?
  • 我們什麼時候使用延遲加載?
+3

http://entityframeworktutorial.net/lazyloading-in-entity-framework.aspx#.USs7CB3ql0U – Habib 2013-02-25 10:23:17

+0

閱讀考試70-516培訓教材 – Aphelion 2013-02-25 10:25:25

+0

歡迎來到SO。這個問題對於一個SO問題可能有點不確定,因爲這個問題往往與確切的解決方案有關的確切問題,所以我擔心它會變成「不具有建設性」。要了解如何從SO獲得最佳效果,請查看[About],[FAQ]和[ask]頁面。 – 2013-02-25 10:47:18

回答

3

至於因爲,就像一個懶惰的人,你是推遲做的事情你不要在this

這就是所謂的延遲加載指出邁克斯通不想。與之相反的是Eager Loading,在你需要它之​​前很早就加載了一些東西。

如果你很好奇爲什麼人們可能會使用延遲加載,那麼考慮一個需要一段LOOOOONG時間才能啓動的應用程序。這個應用程序可能會進行大量的熱切加載......從磁盤加載內容,進行計算以及在不需要的時間之前進行計算。

將此與延遲加載比較,應用程序啓動速度會快得多,但是當您第一次需要做某些需要長時間運行的負載時,第一次加載時可能會有輕微暫停。因此,通過延遲加載,您可以在整個應用程序運行過程中分攤加載時間......並且實際上可以節省加載用戶可能從不打算使用的內容。

3

延遲加載意味着延遲加載相關數據直到您明確請求爲止。

採取從這裏的例子..

Lazy loading

+0

我正要寫完全相同的答案。 – 2013-02-25 10:27:45

+0

我還有一個疑問。什麼是異步?什麼是線程? – Niventh 2013-02-25 10:29:59

+0

@AbiRuban - 那麼請爲此提出一個不同的問題。它與這個問題無關 – levelnis 2013-02-25 10:30:45