我的DatabaseClient类中有代码,通过检查ThreadStatic属性Transaction.Current来检查是否存在活动的TransactionScope:
if (Transaction.Current == null)
{
// open a new connection and do things
}
我有使用此类的代码,该类创建一个TransactionScope,执行两个数据库操作,然后完成它。然后,该应用程序继续进行进一步的数据库工作。但是现在,当它调用上面的代码时,我得到了一个异常:
System.InvalidOperationException: The current TransactionScope is already complete.
我需要做什么才能“重置”当前事务,以便可以再次安全地检查Transaction.Current?
相关分类