Linq to SQL在一个SubmitChanges()中插入许多行

时间:2012-01-19 18:01:18

标签: c# linq-to-sql

我在一个SubmitChanges()调用中插入表1000行更快,我必须在此表中添加数TB的行。

其中一个将成功插入其他将在插入时返回异常。 如何计算我们有多少例外以及如何捕获它们对每一行都是独占的?

2 个答案:

答案 0 :(得分:1)

嗯,不幸的是linq2sql完全不适合批量插入。它很慢,所以你真的想看一个不同的解决方案。您可以在插入之前验证所有记录,然后使用sqlbulkcopy进行非常快速的插入。

答案 1 :(得分:0)

如果它在SubmitChanges()投掷,那么你可以做的并不多。将其包装在try-catch中以至少获取一些例外。或者,如果您确实需要知道逐行异常,则必须单独插入它们。