using (var ts1 = new TransactionScope())
{
//方法一。。
//方法二。。
//呼叫存盤程序
ExecuteNonQuery();
ts1.Complete();
}
我呼叫的存盤程序里也有事務,正常執行沒有問題,如果存盤程序發生回滾.net后臺就會報“EXECUTE 后的事務計數指示 BEGIN 和 COMMIT 陳述句的數目不匹配。上一計數 = 1,當前計數 = 0。”錯誤,如果我把ExecuteNonQuery()方法放到事務外面就能夠正常執行,感覺像是TransactionScope里面發生了問題,求大神幫忙看看是什么原因呀,感激不盡
uj5u.com熱心網友回復:
提示 BEGIN 和 COMMIT 陳述句的數目不匹配,那就真是不匹配如果你的存盤程序有條件分支,那就測驗所有條件分支
uj5u.com熱心網友回復:
TransactionScope我記得不用Complete,你如果在里面Complete了,Scope就無法關閉了。當然不一定準確,建議你自己除錯跟蹤一下。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/99181.html
標籤:ASP.NET
上一篇:各位大佬,netcore3.0到底支持不支持呼叫remoting介面啊,求救。
下一篇:求大佬指教,C#方面Convert.ToInt32(txtHour.Text)中的txtHour.Text一直顯示物件參考非靜態的字符....
