1

我需要编写一个将数据从 RavnDB 迁移到 SQL 的应用程序。我正在将数据从 ravenDB 中提取出来,同时它仍在接收大量写入。这意味着我通常会提取过时的数据。在 SQL 端,我有一个主键,它实际上是乌鸦生成的 GUID ID。由于我正在提取陈旧的数据 - 有时相同的实体会返回。这很好,但是因为我在尝试保存更改时正在使用 EF,所以我得到了一些 DbUpdateException。所以我想知道是否有办法告诉 DbContext 忽略 DbUpdateException 并继续插入?

非常欢迎任何想法或意见,谢谢

4

1 回答 1

1

首先我必须说你的解决方案有问题(忽略错误通常是不好的做法) - 也许你应该考虑重新设计你的解决方案。
无论如何,如果您确实需要使用实体框架,则可以选择为您在本文中阅读的 CRUD 操作设置自定义存储过程, 您可以为插入创建 SP:

 INSERT INTO tragetTable
 SELECT @id,@val1,@Val2
 WHERE @Id NOT IN(select id from tragetTable)

这可能会
成功

于 2012-04-08T11:46:02.867 回答