Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Linq到SQL在一个SubmitChanges()中插入多行_C#_Linq To Sql - Fatal编程技术网

C# Linq到SQL在一个SubmitChanges()中插入多行

C# Linq到SQL在一个SubmitChanges()中插入多行,c#,linq-to-sql,C#,Linq To Sql,我正在一次SubmitChanges()调用中向表中插入1000行,速度更快,而且我必须向这个表中放入许多TB的行 其中一个将成功插入,另一个将在插入时返回异常。 如何计算我们有多少异常以及如何捕获每一行的独占异常?如果它抛出SubmitChanges(),那么您就无能为力了。或者将其包装在try catch中,以至少捕获一些异常。或者,如果您确实需要知道逐行异常,则必须单独插入它们。很遗憾,linq2sql根本不适合批量插入。这是缓慢的,所以你真的想看看一个不同的解决方案。您可以在插入之前验证

我正在一次
SubmitChanges()
调用中向表中插入1000行,速度更快,而且我必须向这个表中放入许多TB的行

其中一个将成功插入,另一个将在插入时返回异常。
如何计算我们有多少异常以及如何捕获每一行的独占异常?

如果它抛出
SubmitChanges()
,那么您就无能为力了。或者将其包装在
try catch
中,以至少捕获一些异常。或者,如果您确实需要知道逐行异常,则必须单独插入它们。

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

我已经在这样做了,但是我没有准确的计数器和问题状态;-)