几个插件性能c#

Kee*_*tah 4 c# database

我在一张桌子上做了几次插入.现在,我已经迭代了一个对象列表,对于每个对象,我使用insert语句执行ExecuteNonQuery.

我想知道是否有紧固的方法来做到这一点.这样,插入800个寄存器需要几分钟.

我在Java中使用了executeBatch方法,对于这个提议,c#中有类似的东西.

问候 !

小智 5

插入物[相对]快速/便宜.提交缓慢/昂贵.

除非是延迟连接,否则多个(如数百个)插入语句应该没问题.

"......需要几分钟......"听起来好像没有使用交易(因此可能有800次提交 - 哎哟!).在C#中控制事务的最简单方法之一是使用TransactionScope:

using (var connection = ...)
using (var tx = new TransactionScope()) {
   foreach (var row in rows) {
      // insert row
   }
   // commit all at once
   tx.Complete();
}
Run Code Online (Sandbox Code Playgroud)

如果限制事务数量(因此提交)不足以满足功能要求,我只会考虑方法.

快乐的编码.