2011-12-22 57 views
1

我是新來的實體框架,所以原諒我,如果這個問題似乎基本。我想知道,最好是保存由Entity Framework創建的上下文對象,以便在應用程序中使用它,或者我應該在每次訪問/修改數據庫時創建一個新的上下文對象?我應該在Entity Framework中保存上下文對象嗎?

爲了制定不同的問題,如果我太頻繁地創建上下文對象,會出現任何性能問題嗎?或者如果我在應用程序的整個生命週期中保持上下文對象存在,那麼是否會出現任何數據庫問題(例如鎖定數據庫)?

回答

4

EF和Linq2SQL上下文都是爲短期使用而設計的。 如果您正在提供網頁,通常最佳做法是根據HTTP請求使用一個上下文。

但我認爲這也適用於其他ORMs。所有這些都使用某種緩存,並且可能導致的對象更改跟蹤是如果上下文壽命過長或在請求之間共享時出現的奇怪錯誤。

編輯:如果您正在編寫胖客戶端應用程序,情況可能會有所不同。

+0

感謝您的信息:-) – Rafid 2011-12-22 09:51:54

相關問題