我有以下代码执行将单行提交到数据库表(SQL 2008 / .NET 4)
using (var db = new MyDbDataContext(_dbConnectionString))
{
Action action = new Action();
db.Actions.InsertOnSubmit(dbAction);
db.SubmitChanges();
}
通常一切都很好,但偶尔我会遇到以下异常:
System.InvalidOperationException: This SqlTransaction has completed; it is no longer usable.
at System.Data.SqlClient.SqlTransaction.ZombieCheck()
at System.Data.SqlClient.SqlTransaction.Rollback()
at System.Data.Linq.DataContext.SubmitChanges(ConflictMode failureMode)
SO上有许多类似的问题,但我在阅读后无法找出原因。
这可能仅仅是由于 SQL 超时(在调用后近 25 秒发生异常)吗?或者在这种情况下我应该期待 SQL 超时异常吗?
有谁知道还有什么可能导致这种情况?