我正在使用
此外,在出现异常后,似乎随机插入了批处理记录的数量。例如,最后一个操作有12440个插入,超时后表中插入了7673条记录。
我做错了什么?
这是我的代码:
TransactionScope
进行批量插入和更新。问题是,即使我将TransactionScope
的超时时间设置为一小时,我仍然在30分钟的操作中遇到了超时异常。此外,在出现异常后,似乎随机插入了批处理记录的数量。例如,最后一个操作有12440个插入,超时后表中插入了7673条记录。
SqlConnection
和SqlCommand
的超时时间都设置为int.MaxValue
。我做错了什么?
这是我的代码:
using (TransactionScope transaction = new TransactionScope(TransactionScopeOption.Required, TimeSpan.FromHours(1)))
{
try
{
using (db = new DB())
{
//operations here
}
}
catch (Exception ex)
{
throw new Exception("DB Error:\r\n\r\n" + ex.Message);
}
transaction.Complete();
} // <--- Exception here: Transaction aborted (Inner exception: Timeout)
MaxValue
,但我怀疑……问题并不像看起来那样。 - user166390