2011-12-02 72 views
1

我們正在利用EF更改跟蹤來觸發某些事件。例如,如果個人實體的電子郵件地址發生變化,我們可以發送電子郵件給管理員或其他類似的東西。如何在更新時檢測分離實體的單獨屬性更改?

我想知道是否有一種簡單的方法可以調用類似CheckForChangesOnAttach(entity)的查詢數據庫的當前數據,並與分離的實體進行比較以將某些屬性設置爲更新。看起來像是一些不應該太難以做的事情,除了附加大型的分離實體圖,這就是爲什麼我想知道是否有像內置的東西(我們先使用代碼,順便說一句)。

我們的系統對分離的實體沒有太大的作用,所以99%的時間我們不需要類似的東西,所以我不太關心性能。

+0

我認爲另一種方法比這裏更好。而不是通過電線發送整個修改的對象圖,爲什麼不發送增量?在這種情況下,你甚至不需要生成DTO類。如果您對此有任何意見,請讓我們討論http://stackoverflow.com/questions/1344066/calculate-object-delta。 – HappyNomad

回答

2

是的,有這樣的選項爲單一實體(必須通過鍵加載實體並在其ObjectSet稱之爲ApplyCurrentValues - 這將推動新的值從脫離實體附着一個),但有no option for object graphs - 你必須推出自己的解決方案對象圖。

+0

謝謝!並感謝您徹底回答了許多其他EF問題。我遇到了很多幫助我的東西。 – Ocelot20