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

本文关键字:插入 数据 数据库 何使用 Linq to SQL | 更新日期: 2023-09-27 18:10:36

在过去,我总是使用class SqlBulkCopy来完成大容量插入。但我不知道如何实现它使用Linq到SQL。如果逐个插入,效率会很低。
有什么好主意吗?

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

简单:你没有。只要用SqlBulkCopy。LINQ-to-SQL只是一个工具。SqlBulkCopy是一个工具。为每项工作使用正确的工具。有时这意味着使用一些不是 LINQ-to-SQL的东西。这可能意味着创建一个DataTable(如果您有野心,也可以创建一个假冒的IDataReader)来表示数据;也许看看转换通用列表/可枚举到数据表?要从您的类型化对象到DataTable,您可以馈送到SqlBulkCopy

参见SubmitChanges()的文章。

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