可通过调用一个方法来嵌套事务范围,该方法在使用其自己范围的方法中使用 TransactionScope,下面示例中的 RootMethod 方法就是前者这样的方法。
- void RootMethod()
- {
- using(TransactionScope scope = new TransactionScope())
- {
- SomeMethod();
- scope.Complete();
- }
- }
- void SomeMethod()
- {
- using(TransactionScope scope = new TransactionScope())
- {
- scope.Complete();
- }
- }
最顶层事务范围称为根范围。
TransactionScope 类提供了多个重载构造函数,它们接受 TransactionScopeOption 类型的枚举,而该枚举定义范围的事务行为。
TransactionScope 对象有以下三个选项ÿ