如何从简单对象的List <>用SqlBulkCopy进行大插入?
我是否可以实现自定义IDataReader?
只需从对象列表中创建一个DataTable并调用SqlBulkCopy.WriteToServer,然后传递数据表即可。
SqlBulkCopy.WriteToServer
您可能会发现以下有用:
为了使SqlBulkCopy具有最佳性能,应设置适当的BatchSize。10,000个看起来不错,但可以配置您的数据。
使用SqlBulkCopyOptions.TableLock时,您可能还会观察到更好的结果。
可以在此处找到SqlBulkCopy性能的有趣且有用的分析。