我有大量的实体,例如10k实体已全部更新。我需要一种快速的方式来改变状态并最终将它们提交给数据库。在实体框架中为实体设置状态的最快方法 sqlite
BaseOtiveContext.Entry(Entity).State = EntityState.Modified;
对于批量插入,我可以通过添加范围轻松实现非常快的结果。
BaseOtiveContext.Contacts.AddRange(Entities)
我尝试并行为更新的实体的每个,但它会引发错误,因为集合中的对象被修改。
我需要一种方法来做到这一点:
BaseOtiveContext.Contacts.AddRange(Entities)
,但在同一时间将状态更改为
.State = EntityState.Modified;
问题是集合中的对象被修改。拆分成单独的组仍然存在同样的问题。这个问题与平行线程本身无关,而更多的与改变实体状态的本质有关。 – CodeMilian