次の方法で共有


SqlConnection.EnlistDistributedTransaction メソッド

メモ : この名前空間、クラス、およびメンバは、.NET Framework Version 1.1 だけでサポートされています。

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

Public Sub EnlistDistributedTransaction( _
   ByVal transaction As ITransaction _)
[C#]
public void EnlistDistributedTransaction(ITransactiontransaction);
[C++]
public: void EnlistDistributedTransaction(ITransaction* transaction);
[JScript]
public function EnlistDistributedTransaction(
   transaction : ITransaction);

パラメータ

  • transaction
    参加先の既存のトランザクションへの参照。

解説

自動登録が無効になっている場合、 EnlistDistributedTransaction メソッドを使用して、既存の分散トランザクションを登録できます。既存の分散トランザクションに参加すると、トランザクションがコミットまたはロールバックされたときに、データ ソース側のコードで変更された内容もコミットまたはロールバックされます。分散トランザクションの詳細については、「 分散トランザクションへの参加 」を参照してください。

注意    SqlConnectionBeginTransaction を使用して既にトランザクションを開始している場合、 EnlistDistributedTransaction は例外を返します。ただし、開始されているトランザクションがデータ ソースで開始されたローカル トランザクションである場合 (たとえば、 SqlCommand オブジェクトを使用して明示的に BEGIN TRANSACTION ステートメントを実行した場合など)、 EnlistDistributedTransaction は、ローカル トランザクションをロール バックし、要求された既存の分散トランザクションを登録します。ローカル トランザクションがロール バックされたことは通知されません。開発者は、 BeginTransaction を使用して開始されていないローカル トランザクションを管理する必要があります。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

SqlConnection クラス | SqlConnection メンバ | System.Data.SqlClient 名前空間