"没有 MTS 对象上下文"是什么意思?
执行一分布式事务,报错“没有 MTS 对象上下文”。
配置:win2000 server+.net2003
代码如下:
<System.EnterpriseServices.Transaction(EnterpriseServices.TransactionOption.RequiresNew)> _
Public Class cls_test
Inherits System.EnterpriseServices.ServicedComponent
'<System.EnterpriseServices.AutoComplete()> _
Public Shared Sub t()
Dim ConnectString = "data source=localhost;initial catalog=db;persist security info=False;user id=sa;password=pwd;packet size=4096;connect timeout=120"
Dim cn As New SqlClient.SqlConnection(ConnectString)
Try
cn.Open()
Dim cmd As New SqlClient.SqlCommand("insert into t_bumen(ccode,cname) values('999','kkk')", cn)
cmd.ExecuteNonQuery()
System.EnterpriseServices.ContextUtil.SetAbort()
cn.Close()
Catch ex As Exception
cn.Close()
End Try
End Sub
End Class
调用代码:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
t.t()
End Sub
当执行到System.EnterpriseServices.ContextUtil.SetAbort()时报错,并且数据已经写入数据库中。