我們在.NET 4項目中遇到TransactionScope問題。C#,Linq2Sql,TransactionScope,「Transaction has aborted。」,msdtc,sqlserver 2005
我們已經將我們的DAL分割成了域,也就是說我們有不同的Linq2Sql DataContexts指向同一個數據庫。
當在同一個TransactionScope中,我們在多個DataContext上插入/更新時,會立即彈出一個msdtc事務,在本地和服務器上都會彈出,然後它只會在那裏掛起1-2分鐘(猜測超時),代碼將繼續運行,直到t.Complete()和隨後的隱含的.Dispose將產生並異常「事務已中止」。
我們已經配置MSDTC在本地和服務器上,讓所有,任何身份驗證,全部跟蹤的水平,仍然沒有相關的信息來自dtctrace.log
我想這是標準程序MSDTC踢當更多的一個數據庫連接啓動(即使它是相對於同一個數據庫),但爲什麼超時?這些操作沒有衝突,在我們的域中發生死鎖沒有可能的方式?
用Google搜索,並在這裏一些經驗豐富的經驗:)
我們轉移到單個數據上下文來避免這種情況。謝謝您的回答。 – MrSmith 2012-03-09 09:05:06