我有一個LINQ的datacontext和的ObservableCollection拿着記錄了公司的表中的SQLWPF LINQ的DataContext刷新不在SQL數據庫表
改變當前記錄和當前的datacontext取得了新的記錄讀取新記錄( DataDC)當我做了
DataDC.SubmitChanges();
但是,如果我有另外一個窗口設有獨立的DataContext相同的表,如果我修改當前存在於兩個DataContexts用於記錄的字段(即公司名稱修改反映)這些變化當我做了
DataDC.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues, Companys);
但是如果其他窗口/ DataContext的創建一個新的記錄,或者如果我使用SQL Explorer創建一個新的紀錄,這些新的記錄不會在DataContext.Company表即使經過
DataDC.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues, Companys);
顯示我試過不同的模式。
那麼爲什麼沒有.Refresh(....)加載新記錄,但會反映對存在的記錄所做的更改?
我錯過了什麼嗎?
我看不到一種方法來刷新DC中全部來自SQL表的新數據?
是的我一直在想,我需要這樣做,我發現有兩個datacontext到同一張表是不是一個好主意,我會這樣做。 然而,這並不能解決數據添加或刪除時的問題,購買數據庫的另一個用戶。 由於SINGLE datacontext中的緩存數據仍不會顯示外部添加的記錄。 (和刪除,他們拋出一個「excess無法刷新指定的對象。該對象不再存在於數據庫中」) – PrimeTSS 2010-01-02 00:57:31