2010-03-31 71 views
0

中間層組件將執行應用程序中的數據訪問例程。該組件將調用多個SQL Server存儲過程來執行數據庫更新。所有這些程序調用都在單個事務的控制下運行。 的中間層將實現以下目標代碼:防止事務一致性(事務類型;事務隔離級別)

SqlCommand comm = connection.CreateCommand(); 
SqlTransaction trans; 

如何,我必須將代碼添加到組件指定避免發生此類錯誤保護的最高水平(兩個用戶試圖同時更新相同的數據) 。

回答

0

您使用IsolationLevel

using (SqlConnection con = new SqlConnection(connectionString)) 
{ 
    using (SqlTransaction tran = con.BeginTransaction(IsolationLevel.Serializable)) 
    { 
     SqlCommand cmd = con.CreateCommand(); 

     // etc... 

     con.Open(); 


    } 
} 

您仍然需要捕捉適當的SQL例外...