1
我們有一個使用ADO.NET的C#應用程序和一個具有SNAPSHOT事務隔離級別的SQL Server。這是'原樣',不幸的是不能修改。在處理快照連接後調用鏈接的服務器失敗
現在我們需要在鏈接的服務器上插入東西。
我們執行以下代碼(減少來說明問題):
// Create a snapshot Transaction and close the connection
using (var con = new SqlConnection(myConStr))
{
con.BeginTransaction(TransactionLevel.Snapshot);
}
// do something with a linked server
using (var con = new SqlConnection(myConStr))
{
using (var cmd = con.CreateCommand()
{
cmd.CommandText = "insert into LinkedServer.SomeDb..Table ...";
cmd.ExecuteNonQuery();
}
}
我們得到可以試圖插入一些內容鏈接服務器
「遠程訪問不支持事務處理時異常隔離級別「SNAPSHOT」'
我想知道爲什麼它是不可能的:我們打開連接,確保它被丟棄(清除所有事務,我猜),並使用第二個連接進行鏈接服務器調用。
使用普通SQL執行SSMS中的東西似乎工作。
我們有什麼缺失?有沒有適當的方法來做到這一點?
感謝您的正確方向提示。