OracleConnection.EnlistDistributedTransaction(ITransaction) メソッド

定義

分散トランザクションとして指定したトランザクションに参加します。

public:
 void EnlistDistributedTransaction(System::EnterpriseServices::ITransaction ^ distributedTransaction);
public void EnlistDistributedTransaction (System.EnterpriseServices.ITransaction distributedTransaction);
member this.EnlistDistributedTransaction : System.EnterpriseServices.ITransaction -> unit
Public Sub EnlistDistributedTransaction (distributedTransaction As ITransaction)

パラメーター

distributedTransaction
ITransaction

登録先の既存の ITransaction への参照。

注釈

ADO.NET 2.0 の新機能は、このメソッドを EnlistTransaction 使用して分散トランザクションに参加するためのサポートです。 インスタンスに Transaction 接続が参加するため、 EnlistTransaction は分散トランザクションを管理するために名前空間で System.Transactions 使用できる機能を利用するため、この目的のために EnlistDistributedTransaction を使用することをお勧めします。 詳細については、分散トランザクションに関する記事を参照してください。

を使用して、既存の分散トランザクションに引き続き参加できます。

EnlistDistributedTransaction 自動参加が無効になっている場合はメソッド。 既存の分散トランザクションに参加すると、トランザクションがコミットまたはロールバックされた場合、データ ソースのコードによって行われた変更もコミットまたはロールバックされます。

EnlistDistributedTransactionを使用してBeginTransactionトランザクションを既にOracleConnection開始している場合は、例外を返します。 ただし、トランザクションがデータ ソースで開始されたローカル トランザクションである場合 (たとえば、オブジェクトを使用して OracleCommand BEGIN TRANSACTION ステートメントを明示的に実行するなど) EnlistDistributedTransaction 、ローカル トランザクションをロールバックし、要求に応じて既存の分散トランザクションに参加させます。 ローカル トランザクションがロールバックされたこと、および使用 BeginTransactionを開始していないローカル トランザクションの管理は行われません。

適用対象