事务处理模式是为参与事务处理的每个组件而设置的。它用来告知MTS说组件所做出的更改是否应该被忽略。
当事务处理创建新对象的时候,MTS会查看两个信息源来确定事务处理的模式。首先,它要确定对象的创建者是否正在一个已经存在的事务处理里运行。其次,它要使用组件的事务处理模式。
在Visual Basic .NET里,可以从System.EnterpriseServices.ServicedComponent里衍生出一个类,这类能够参与事务处理。如果System.EnterpriseServices这个命名空间不在你的项目里,你就要把它添加到项目的参照里:
Public Class MTSTest
Inherits System.EnterpriseServices.ServicedComponent
End Class
要控制用于类的事务处理模式,你需要对类使用TransactionAttribute。Transaction(事务处理)属性的构造器能够接受TransactionOption这个类型的枚举参数(enumerated parameter)。TransactionAttribute可能的值有:
下面的代码显示了如何声明一个对象需要事务处理:
<System.EnterpriseServices.Transaction
_
(EnterpriseServices.TransactionOption.Required)> _
Public Class MTSTest
Inherits System.EnterpriseServices.ServicedComponent
End Class