我正在研究WPF 4/Entity Framework 4(自我跟蹤實體)應用程序。作爲概念證明,我創建了一個與EF實體綁定的非常簡單的UI。具有「檢查點」的自我跟蹤實體
我們的用戶希望能夠編輯實體,但可以選擇接受或拒絕多組更改,而不必保存到數據庫,直到稍後準備就緒時爲止。例如,用戶可以對實體進行一組修改,然後「接受更改」(但不保存)。用戶所做的下一組修改可能會被「拒絕」。在這種情況下,實體將恢復到最後一次接受更改時的狀態。然後用戶可以對實體進行更多的修改,但是這次保存到數據庫。第二組修改將不會被包括,因爲他們被拒絕...
我想使用OriginalValues集合,但顧名思義,它只提供每個字段的原始值。我確信我可以編寫一些自定義代碼來在接受更改時清除OriginalValues集合,然後在拒絕更改時恢復爲OriginalValues。
我只是在這裏集思廣益。有沒有人做過這樣的事情?有什麼好的例子嗎?
非常感謝!
DataContractSerializer在我的情況下工作。我發現有一個重載的構造函數是有幫助的:http://stackoverflow.com/questions/2417023/clone-whole-object-graph。謝謝。 –