批量数据需要使用Entity Framework c#插入/更新

时间:2016-04-20 11:38:39

标签: c# entity-framework bulkinsert

我需要在C#中使用Entity Framework插入/更新500条记录。在那500条记录中有新记录和现有记录。在这种情况下我该怎么办?

如果发生异常,应该跳过该记录,其他记录需要更新..请帮我这个...;)

1 个答案:

答案 0 :(得分:1)

在这种情况下,即使考虑批量插入指令,

Entity Framework也不是正确的选择。当您启动SaveChanges()命令时,即使单个错误也会撤消该事务,因为EF将始终尝试阻止插入任何错误数据(同样,也无法将重要错误与非重要错误分开)。

可能的选择:

  1. 在try / catch块中插入并保存每一行(它可以工作,但它非常缓慢而痛苦)
  2. 在带有数据的临时表和目标表之间寻找SqlConnection和普通的旧MERGE指令(明确更好) - 检查this