2009-09-30 22 views
1

在應用程序塊中遇到了一些問題,試圖找出在事務中執行3個SP的邏輯方法。企業應用程序數據塊事務

到目前爲止,我有:

SqlDatabase db = new SqlDatabase(this.ConnectionString); 
DbCommand insertMessageDetailCommand = db.GetStoredProcCommand("InsertMessageDetail"); 

看起來不錯......從這個角度事情變得有點混亂,很明顯,我需要添加SP參數,我通過做:

db.AddInParameter....... 

讓我困惑的是 - 注意你在哪裏添加參數 - 到SqlDatabase對象。

所以......這是一切優秀和良好,即使在交易中的第一項:

DbTransaction transaction = connection.BeginTransaction(); 
       try 
       { 
        //INSERT Message Info 
        int PK = Convert.ToInt32(db.ExecuteScalar(insertMessageDetailCommand, transaction)); 

除了現在我需要調用一個新的SP,與自己的參數。我是否需要以某種方式清除數據庫對象中的參數?

我看到這個工作的唯一方法是如果我創建另一個數據庫對象,但肯定這不會與相同的事務兼容?

請幫

回答

0

如果你想知道,我想我想通了,注意db對象如何需要一個命令對象參數。它會將參數分配給所需的操作。如果你考慮一下,這很有幫助。

相關問題