我試圖實現樂觀併發檢查實體框架的實體更新。我使用通用資源庫和工作模式單元。忽略時間戳
我已經介紹了時間戳的歸屬特性(如字節數組)到我的實體,每當我更新數據,自動增加值(好像是數據庫管理,這是它應該做的)。
我通過(使用automapper)的VM映射到實際模型加載從一個視圖模型的更新的值。這將導致所有的設置(包括時間戳)的根據字段正確類型的實體的一個新的(分開?)實例。
更新本身就像
i_oOldEntity = m_oDbSet.Find(i_oEntity.MaterialId)
context.Entry(i_oOldEntity).CurrentValues.SetValues(i_oEntity)
context.SaveChanges()
與i_oEntity作爲automapped實體執行。
這將更新值本身很好,但是它完全忽略時間戳值從視圖模型來。生成的SQL代碼使用WHERE子句中的最新rowversion值。
總之:我如何才能從EF WHERE子句中使用我的視圖模型時間戳值?