Teb*_*ebo 47 c# transactionscope
我有两个交易范围,一个在另一个范围内.我很想知道内部事务范围是否会在提交后回滚,而外部事务范围没有完成.
Gre*_*ech 105
它取决于您使用嵌套事务作用域启动的作用域选项.
如果使用默认选项,TransactionScopeOption.Required
则嵌套作用域将在与外部作用域相同的事务中登记,因此当外部作用域回滚时,内部作用域也将回滚,即使它已调用Complete
.
但是,如果您使用,TransactionScopeOption.RequiresNew
则嵌套作用域将开始其自己的事务并与外部作用域分开完成,因此即使外部作用域回滚也不会回滚.
如果您使用,TransactionScopeOption.Suppress
则嵌套作用域将不参与外部事务,并且将以非事务方式完成,因此如果外部事务回滚,则不会形成将回滚的工作的一部分.
Ode*_*ded 28
由于它们是嵌套的,因此内部事务将回滚.
这不是全部,而是取决于您如何创建嵌套事务,但默认情况下,它将回滚.
本文深入探讨TransactionScope
并应回答您的大部分问题.
分发与否是无关紧要的.
归档时间: |
|
查看次数: |
20598 次 |
最近记录: |