我有大量的實體,例如10k實體已全部更新。我需要一種快速的方式來改變狀態並最終將它們提交給數據庫。在實體框架中爲實體設置狀態的最快方法 sqlite
BaseOtiveContext.Entry(Entity).State = EntityState.Modified;
對於批量插入,我可以通過添加範圍輕鬆實現非常快的結果。
BaseOtiveContext.Contacts.AddRange(Entities)
我嘗試並行爲更新的實體的每個,但它會引發錯誤,因爲集合中的對象被修改。
我需要一種方法來做到這一點:
BaseOtiveContext.Contacts.AddRange(Entities)
,但在同一時間將狀態更改爲
.State = EntityState.Modified;
問題是集合中的對象被修改。拆分成單獨的組仍然存在同樣的問題。這個問題與平行線程本身無關,而更多的與改變實體狀態的本質有關。 – CodeMilian