我在using语句中有一个IDbTransaction,但我不确定如果在using语句中抛出异常,它是否会回滚。我知道using语句会强制调用Dispose()...but。有人知道Rollback()也是这样吗?
更新:还有,我是否需要像下面那样显式调用Commit(),或者这也将由using语句来处理?
我的代码看起来有点像这样:
using Microsoft.Practices.EnterpriseLibrary.Data;
...
using(IDbConnection connection = DatabaseInstance.CreateConnection())
{
connection.Open();
using(IDbTransaction transaction = connection.BeginTransaction())
{
//Attempt to do stuff in the database
//potentially throw an exception
transaction.Commit();
}
}
https://stackoverflow.com/questions/641660
复制相似问题