如何使用DbContext和使用Repository模式對CTP 5執行更新操作?早些時候用EF 4.0,它可以像下面這樣完成。實體框架CTP 5 - 存儲庫模式 - 正在執行更新
_context.Customers.AddObject(item);
_context.ObjectStateManager.ChangeObjectState(item, System.Data.EntityState.Modified);
是否有任何理由說明爲什麼EF沒有提供簡單的方法來更新「斷開」的實體。我不想查詢數據庫並將所有屬性複製到從查詢返回的對象。換句話說,EF應該具有接收實體的更新方法(類似於Add方法)。如果entitykey已經存在於數據庫中,則用當前值更新實體。即爲什麼我們應該執行「附加」,然後將所有屬性複製到附加對象。對我來說,複製實體的所有屬性似乎是多餘的,只是爲了在「已斷開連接」的對象已經存在時進行更新。
這正是我所期待的。謝謝。我在這方面有另一個問題,在http://stackoverflow.com/questions/4167033/entity-framework-poco-with-foreign-keys的評論中提到。讓我知道你的想法。 「如何在EF CTP 5中使用DbContext並使用」Ado.net DbContext生成器「?沒有固定代碼,因此設置DirectorId不會清除Director。設置DirectorId後始終設置movie.Director = null my唯一的選擇?「 – Jonna 2011-01-28 18:17:35