我確信這是重復(fù)的,但在搜索互聯(lián)網(wǎng)后我找不到這個問題。因此,如果這是重復(fù)的,請指出正確的一個。問題:如何讓實體框架拾取數(shù)據(jù)庫中實體中從另一個源發(fā)生的更改。由于 DbContext 緩存未更新,我遇到了很多此類問題。示例:假設(shè)我有 2 臺具有相同架構(gòu)的服務(wù)器。兩臺服務(wù)器一起工作并且都使用該表Person。服務(wù)器 A 創(chuàng)建Jack年齡為 21 歲的 Person,并將其保存到數(shù)據(jù)庫中。Jack緩存在服務(wù)器 A 的 DbContext 中。Jack服務(wù)器 B在服務(wù)器 A 創(chuàng)建數(shù)據(jù)庫后從數(shù)據(jù)庫中獲取數(shù)據(jù)。然后,服務(wù)器 B 將Jack年齡更新為 22,并將其保存到數(shù)據(jù)庫中。向服務(wù)器 A 發(fā)出請求。Jack因此服務(wù)器 A 的 DbContext 以其緩存中的版本進(jìn)行響應(yīng)Jack...年齡仍為 21。我很難相信服務(wù)器 A 的 DbContext 沒有辦法重新獲取記錄。我覺得這種能力應(yīng)該融入到實體框架中。如果沒有,那么我還有其他選擇嗎?我想到的一種選擇是告訴實體框架不要使用緩存。這可能嗎?
1 回答

不負(fù)相思意
TA貢獻(xiàn)1777條經(jīng)驗 獲得超10個贊
我認(rèn)為您使用 DbContext 作為單例實例。如果您每次調(diào)用 DbContext 時都對其進(jìn)行初始化,則不會發(fā)生此問題。
- 1 回答
- 0 關(guān)注
- 114 瀏覽
添加回答
舉報
0/150
提交
取消