如何使用Linq to SQL将数据批量插入数据库?

时间:2011-10-07 12:05:10

标签: c# asp.net

过去,我总是使用班级SqlBulkCopy来完成批量插入。但我不知道如何使用Linq to SQL实现它。如果逐个插入,效率将非常低 有什么好主意吗?
提前致谢,抱歉我的英语不好。

2 个答案:

答案 0 :(得分:3)

简单:你没有。您只需使用SqlBulkCopy即可。 LINQ-to-SQL只是一个工具。 SqlBulkCopy是一种工具。为每项工作使用正确的工具。有时这意味着使用不是 LINQ-to-SQL的东西。这可能意味着创建DataTable(或欺骗IDataReader,如果您有野心)来表示数据;或许可以Convert generic List/Enumerable to DataTable?查看从您输入的对象到DataTable,您可以将其输入SqlBulkCopy

答案 1 :(得分:0)

请参阅SubmitChanges()上的这篇文章。

  

在显式调用DataContext上的SubmitChanges之前,您的更改不会传输到服务器。