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를 사용하여 BeginTransaction트랜잭션을 OracleConnection 이미 시작한 경우 예외를 반환합니다. 그러나 트랜잭션이 데이터 원본에서 시작된 로컬 트랜잭션인 경우(예: 개체 EnlistDistributedTransaction 를 사용하여 OracleCommand BEGIN TRANSACTION 문을 명시적으로 실행) 로컬 트랜잭션을 롤백하고 요청된 대로 기존 분산 트랜잭션에 참여합니다. 로컬 트랜잭션이 롤백되었다는 알림이 표시되지 않으며, 사용을 BeginTransaction시작하지 않은 로컬 트랜잭션을 관리할 책임이 있습니다.

적용 대상