0
我是EntityFramework的新成員。實體框架:如何使用多於一個上下文?
我的應用程序有一個上下文對象實例池(每個上下文有1個連接到數據庫)。
問題是,當我更新對象(並調用SaveChanges)時,數據在數據庫和更新上下文中更新,但是當我從其他實例中選擇時,它將獲取所選對象的舊數據。
例子:
讓我們想象一下一個名爲TBL表。
該表有2列:id和數據。
有1行:ID = 1,數據= 2
EFContext context1 = new EFContext();
EFContext context2 = new EFContext();
var obj1 = context1.tbl.Where(a => a.id == 1);
var obj2 = context2.tbl.Where(a => a.id == 1);
obj2.data = 10;
context2.SaveChanges();
var obj3 = context1.tbl.Where(a => a.id == 1);
執行這些行之後,obj3.data
含有2,而不是10
如何解決這個問題?
我不想每次我想訪問數據庫時創建一個上下文實例。
謝謝!
感謝。 但是如果我內部有很多對象,是否有刷新所有表的方法? 有沒有辦法讓對象每次嘗試選擇數據時都從數據庫中獲取數據? 再次感謝。 – Mattan 2010-07-20 11:56:08