共用方式為


SqlConnection.EnlistDistributedTransaction(ITransaction) 方法

定義

將指定的異動登記為分散式異動。

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 啟動的任何本機交易。

適用於