OleDbConnection.EnlistDistributedTransaction(ITransaction) OleDbConnection.EnlistDistributedTransaction(ITransaction) OleDbConnection.EnlistDistributedTransaction(ITransaction) OleDbConnection.EnlistDistributedTransaction(ITransaction) Method

정의

지정된 트랜잭션에 분산 트랜잭션으로 참여합니다.Enlists in the specified transaction as a distributed transaction.

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 ITransaction ITransaction

등록할 기존 ITransaction에 대한 참조입니다.A reference to an existing ITransaction in which to enlist.

설명

ADO.NET 2.0의 새로운 지원을 사용 하는 EnlistTransaction 분산된 트랜잭션에 참여 하는 방법입니다.New in ADO.NET 2.0 is support for using the EnlistTransaction method to enlist in a distributed transaction. 연결을 참여 하기 때문에 Transaction 인스턴스를 EnlistTransaction 에서 사용할 수 있는 기능을 활용 합니다 System.Transactions 네임 스페이스 관리에 대 한 분산 트랜잭션 적합하므로 참여가 이 목적입니다.Because it enlists a connection in a Transaction instance, EnlistTransaction takes advantage of functionality available in the System.Transactions namespace for managing distributed transactions, making it preferable to EnlistDistributedTransaction for this purpose. 자세한 내용은 분산 트랜잭션합니다.For more information, see Distributed Transactions.

사용 하 여 기존 분산된 트랜잭션에 인 리스트 먼 트 할 수 있습니다는 EnlistDistributedTransaction 메서드 자동 인 리스트 먼 트를 사용 하지 않도록 설정 합니다.You can continue to enlist in an existing distributed transaction using the EnlistDistributedTransaction method if auto-enlistment is disabled. 기존 분산된 트랜잭션에 인 리스트 먼 트 하면는 트랜잭션이 커밋되거나 롤백되는 경우 데이터 소스 코드에 의해 수정 된도 커밋 또는 롤백됩니다.Enlisting in an existing distributed transaction makes sure that, if the transaction is committed or rolled back, modifications made by the code at the data source are also committed or rolled back. 분산된 트랜잭션에 대 한 자세한 내용은 참조 하십시오 분산 트랜잭션을합니다.For more information about distributed transactions, see Distributed Transactions.

EnlistDistributedTransaction 예외를 반환 합니다 OleDbConnection 사용 하는 트랜잭션이 이미 시작 BeginTransaction합니다.EnlistDistributedTransaction returns an exception if the OleDbConnection has already started a transaction using BeginTransaction. 그러나 트랜잭션이 데이터 소스에서 시작 된 로컬 트랜잭션 된 경우 (예를 들어 명시적으로 사용 하 여 BEGIN TRANSACTION 문을 실행 하 여는 OleDbCommand 개체), EnlistDistributedTransaction 로컬 트랜잭션을 롤백하고 기존 트랜잭션에 참여 요청 분산된 트랜잭션입니다.However, if the transaction is a local transaction started at the data source (for example, by explicitly executing the BEGIN TRANSACTION statement using an OleDbCommand object), EnlistDistributedTransaction rolls back the local transaction and enlists in the existing distributed transaction as requested. 로컬 트랜잭션이 롤백 되었습니다 및 사용 하 여 시작 되지 않은 로컬 트랜잭션을 관리 하는 일을 담당 받지 BeginTransaction합니다.You won't receive notice that the local transaction was rolled back and are responsible for managing any local transactions not started using BeginTransaction.

적용 대상

추가 정보