我創建了自己的從DbContext繼承的上下文。假設我在數據庫的[Posts]表中有1個職位。考慮這種情況:DbContext的內部緩存(?)
- 我問的DbContext這個職位只爲首次。 DbContext按預期返回它。
- 我在[Posts]表格手動更改了一列。
- 我刷新我的網站=我再次請求DbContext這篇文章。
- DbContext返回一個帖子,該帖子對於此特定列具有舊值!
我看着SQL事件探查器和數據庫是每次我刷新我的網站時,所以爲什麼返回的帖子有一箇舊值?我猜DbContext試圖很聰明,並有一些內部緩存機制,但它會很高興告訴我,他是如此聰明...
有人可以解釋這一點給我嗎?
[EF 4.0模型緩存數據,並且未檢測到修改的數據的可能重複。](http://stackoverflow.com/questions/3617987/ef-4-0-model-caching-the-data-and-不檢測修改後的數據) – 2010-09-10 19:54:02
你的問題分爲兩個已經問過的問題。緩存問題: http://stackoverflow.com/questions/3617987/ef-4-0-model-caching-the-data-and-does-not-detect-the-modified-data/3621477#3621477共享上下文問題: http://stackoverflow.com/questions/3653009/entity-framework-and-connection-pooling/3653392#3653392 – 2010-09-10 20:02:49
是你的'DbContext'靜態的實例,還是它在每個頁面請求上創建? – 2014-06-04 10:58:34