SqlConnection.EnlistDistributedTransaction(ITransaction) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將指定的異動登記為分散式異動。
public:
void EnlistDistributedTransaction(System::EnterpriseServices::ITransaction ^ transaction);
public void EnlistDistributedTransaction (System.EnterpriseServices.ITransaction transaction);
member this.EnlistDistributedTransaction : System.EnterpriseServices.ITransaction -> unit
Public Sub EnlistDistributedTransaction (transaction As ITransaction)
參數
- transaction
- ITransaction
要登記之現有 ITransaction 的參考。
備註
您可以使用 EnlistTransaction 方法在分散式交易中登記。 因為 EnlistTransaction 會在 實例中 Transaction 登記連線, 所以 EnlistTransaction 會利用命名空間中 System.Transactions 可用的功能來管理分散式交易,因此最好是 EnlistDistributedTransaction 。 如需詳細資訊,請參閱分散式交易。
如果停用自動登記,您可以使用 EnlistDistributedTransaction 方法繼續在現有的分散式交易中登記。 在現有的分散式交易中登記可確保,如果認可或回復交易,則資料來源的程式碼所做的修改也會認可或回復。
EnlistDistributedTransaction
如果 已經使用 啟動交易, SqlConnection 則會傳回例外狀況 BeginTransaction 。 不過,如果交易是在資料來源 (啟動的本機交易,例如,藉由使用 SqlCommand 物件) 明確地執行 BEGIN TRANSACTION 語句, EnlistDistributedTransaction 會回復本機交易,並依要求加入現有的分散式交易中。 您不會收到本機交易回復的通知,且負責管理未使用 BeginTransaction 啟動的任何本機交易。