如何批量插入数据转换成使用LINQ分贝到SQL? [英] How to bulk insert data into db using Linq to SQL?
问题描述
在过去,我总是用类 SqlBulkCopy的
来完成批量插入。但我不知道该如何使用LINQ to SQL来实现它。如果由一个插一句,效率将非常低。
任何好的想法?
在此先感谢和抱歉,我的英语不好。
In the past, I always use Class SqlBulkCopy
to complete bulk insert. But I don't know how to implement it using Linq to SQL. If inserted one by one, Efficiency will be very low.
Any good ideas?
Thanks in advance and sorry for my poor English.
推荐答案
简单:你不知道。你只需要使用 SqlBulkCopy的
。 LINQ到SQL是一个简单的工具。 SqlBulkCopy的
是一个工具。用于每个工作的工具。有时这意味着使用的的东西是不是的LINQ到SQL。这可能意味着创建一个数据表
(或恶搞的IDataReader
如果你感觉雄心勃勃的)重新present的数据;在泛型列表也许看数据表从类型对象得到一个数据表
你可以喂到 SqlBulkCopy的
。
Simple: you don't. You just use SqlBulkCopy
. LINQ-to-SQL is simply a tool. SqlBulkCopy
is a tool. Use the right tool for each job. Sometimes that means using something that isn't LINQ-to-SQL. This might mean creating a DataTable
(or a spoof IDataReader
if you are feeling ambitious) to represent the data; look perhaps at Generic List to DataTable to get from your typed objects to a DataTable
you can feed to SqlBulkCopy
.
这篇关于如何批量插入数据转换成使用LINQ分贝到SQL?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!