我使用帶有Durandal模板的asp.net mvc。我在這裏的問題與Durandal集成的Breeze有關。我需要檢測到任何實體狀態變化。我發現在計算器上的答案,討論有關問題就在這裏:How can I detect a change to an entity's EntityState?在保存添加的實體之後檢測對實體狀態的更改
建議的解決方案適用於大多數情況下,我的意思是,我們可以訂閱entityChanged
它的工作原理時:
- 現有實體被修改
- 改性現有的實體被取消(rejectChanges)
- 現有實體被保存(調用SaveChanges)
- 添加的實體生成
- 添加的實體被取消(rejectChanged)
在所有上述情況下,我們可以捕獲該事件由於在SO交建議的解決方案。
但不是當我們創建一個新的實體,該實體將被保存。這次沒有事件在entityChanged
中被觸發。我希望當點擊保存按鈕時,我可以捕捉實體的entityChanged
事件。 Whant對我來說很奇怪的是,在保存實體之前處於Added
狀態,並且在保存該實體之後處於Unchanged
狀態,因此存在發生但未捕獲的更改狀態。
有人可以啓發我嗎?
謝謝。