다음을 통해 공유


Transaction.EnlistPromotableSinglePhase 메서드

정의

승격 가능한 PSPE(단일 단계 인리스트먼트)를 사용하여 내부 트랜잭션이 있는 리소스 관리자를 등록합니다.

오버로드

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification)

승격 가능한 PSPE(단일 단계 인리스트먼트)를 사용하여 내부 트랜잭션이 있는 리소스 관리자를 등록합니다.

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification, Guid)

승격 가능한 PSPE(단일 단계 인리스트먼트)를 사용하여 내부 트랜잭션이 있는 리소스 관리자를 등록합니다.

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification)

Source:
Transaction.cs
Source:
Transaction.cs
Source:
Transaction.cs

승격 가능한 PSPE(단일 단계 인리스트먼트)를 사용하여 내부 트랜잭션이 있는 리소스 관리자를 등록합니다.

public:
 bool EnlistPromotableSinglePhase(System::Transactions::IPromotableSinglePhaseNotification ^ promotableSinglePhaseNotification);
public bool EnlistPromotableSinglePhase (System.Transactions.IPromotableSinglePhaseNotification promotableSinglePhaseNotification);
member this.EnlistPromotableSinglePhase : System.Transactions.IPromotableSinglePhaseNotification -> bool
Public Function EnlistPromotableSinglePhase (promotableSinglePhaseNotification As IPromotableSinglePhaseNotification) As Boolean

매개 변수

promotableSinglePhaseNotification
IPromotableSinglePhaseNotification

참가자가 구현한 IPromotableSinglePhaseNotification 인터페이스입니다.

반환

인리스트먼트를 설명하는 SinglePhaseEnlistment 인터페이스 구현입니다.

설명

트랜잭션의 인리스트먼트는 일시적입니다. 즉, 참가자의 실패에서 살아남지 않습니다. 또한 이 메서드는 트랜잭션 관리자에게 제어를 에스컬레이션하도록 제안하지만 에스컬레이션 자체는 보장되지 않습니다. 에스컬레이션이 실패하면 사용자에게 알림이 전송되고 트랜잭션이 롤백됩니다.

매개 변수 promotableSinglePhaseNotification 리소스 관리자의 내부 트랜잭션을 커밋하려고 시도한 결과를 트랜잭션 관리자와 통신하는 데 사용됩니다. 일관되지 않은 데이터가 보고되면 트랜잭션 관리자가 예외를 throw합니다. InDoubt 결과가 보고되면 트랜잭션 관리자는 자체 내부 인리스트먼트에서 결과 알림을 찾고 보고된 응답을 무시합니다.

트랜잭션의 등록 및 에스컬레이션에 대한 자세한 내용은 트랜잭션 관리 에스컬레이션참조하세요. PSPE에 대한 자세한 내용은 단일 단계 커밋 및 승격 가능한 단일 단계 알림사용하여 최적화를 참조하세요.

적용 대상

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification, Guid)

Source:
Transaction.cs
Source:
Transaction.cs
Source:
Transaction.cs

승격 가능한 PSPE(단일 단계 인리스트먼트)를 사용하여 내부 트랜잭션이 있는 리소스 관리자를 등록합니다.

public:
 bool EnlistPromotableSinglePhase(System::Transactions::IPromotableSinglePhaseNotification ^ promotableSinglePhaseNotification, Guid promoterType);
public bool EnlistPromotableSinglePhase (System.Transactions.IPromotableSinglePhaseNotification promotableSinglePhaseNotification, Guid promoterType);
member this.EnlistPromotableSinglePhase : System.Transactions.IPromotableSinglePhaseNotification * Guid -> bool
Public Function EnlistPromotableSinglePhase (promotableSinglePhaseNotification As IPromotableSinglePhaseNotification, promoterType As Guid) As Boolean

매개 변수

promotableSinglePhaseNotification
IPromotableSinglePhaseNotification

참가자가 구현한 IPromotableSinglePhaseNotification 인터페이스입니다.

promoterType
Guid

분산 트랜잭션 프로세서의 형식입니다.

반환

인리스트먼트를 설명하는 SinglePhaseEnlistment 인터페이스 구현입니다.

설명

promoterType 매개 변수에 대해 지정된 값이 TransactionInterop.PromoterTypeDtc경우 트랜잭션 MSDTC에서 승격해야 하며 IPromotableSinglePhaseNotification.Promote 메서드 반환된 byte[] MSDTC 트랜잭션 전파 토큰이 합니다.

promoterType 매개 변수에 지정된 값이 TransactionInterop.PromoterTypeDTC않으면 트랜잭션은 MSDTC가 아니라 호출자의 IPromotableSinglePhaseNotification구현에 의해 승격됩니다. 이 호출에 성공하면 TransactionPromotionException반환하는 트랜잭션에 대한 후속 작업 집합이 있습니다. 이러한 작업은 다음과 같습니다.

  • Transaction.EnlistDurable

  • TransactionInterop.GetDtcTransaction

  • TransactionInterop.GetExportCookie

  • TransactionInterop.GetTransmitterPropagationToken

  • Transaction 개체의 serialization

적용 대상