OleDbConnection.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 的參考。
備註
ADO.NET 2.0 的新功能支援使用 EnlistTransaction 方法來登記分散式交易。 因為它會在實例中 Transaction 登記連線, 所以 EnlistTransaction 會利用命名空間中 System.Transactions 可用的功能來管理分散式交易,因此最好是 EnlistDistributedTransaction 以供此用途使用。 如需詳細資訊,請參閱分散式交易。
如果停用自動登記,您可以繼續使用 方法在現有的分散式交易 EnlistDistributedTransaction 中登記。 在現有的分散式交易中登記可確保,如果認可或回復交易,也會認可或回復數據源上的程式代碼所做的修改。 如需分散式交易的詳細資訊,請參閱 分散式交易。
EnlistDistributedTransaction如果已經使用 BeginTransaction啟動交易,則OleDbConnection傳回例外狀況。 不過,如果交易是在數據源上啟動的本機交易 (,例如,藉由使用 OleDbCommand 物件) 明確執行 BEGIN TRANSACTION 語句, EnlistDistributedTransaction 會復原本機交易,並依要求在現有的分散式交易中登記。 您不會收到本機交易已回復的通知,並負責管理未使用 BeginTransaction啟動的任何本機交易。