// System.Transactions.Transaction需要引用系统程序集System.Transactions.DLL
System.Transactions.Transaction old = System.Transactions.Transaction.Current;
try
{
System.Transactions.TransactionOptions txOptions = new System.Transactions.TransactionOptions();
txOptions.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
System.Transactions.Transaction.Current = new System.Transactions.CommittableTransaction(txOptions);
// 需要独立提交事务的代码
// DoSomething(...)
((System.Transactions.CommittableTransaction)System.Transactions.Transaction.Current).Commit();
}
catch (Exception ex)
{
((System.Transactions.CommittableTransaction)System.Transactions.Transaction.Current).Rollback();
throw ex;
}
finally
{
System.Transactions.Transaction.Current = old;
}
评论