Transaction.EnlistPromotableSinglePhase Método

Definição

Inscreve um Resource Manager que tem uma transação interna usando uma PSPE (inscrição de fase única passível de promoção).

Sobrecargas

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification)

Inscreve um Resource Manager que tem uma transação interna usando uma PSPE (inscrição de fase única passível de promoção).

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification, Guid)

Inscreve um Resource Manager que tem uma transação interna usando uma PSPE (inscrição de fase única passível de promoção).

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification)

Origem:
Transaction.cs
Origem:
Transaction.cs
Origem:
Transaction.cs

Inscreve um Resource Manager que tem uma transação interna usando uma PSPE (inscrição de fase única passível de promoção).

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

Parâmetros

promotableSinglePhaseNotification
IPromotableSinglePhaseNotification

Uma interface IPromotableSinglePhaseNotification implementada pelo participante.

Retornos

Uma implementação de interface SinglePhaseEnlistment que descreve a inscrição.

Comentários

Os alistamentos em uma transação são voláteis; ou seja, eles não sobrevivem ao fracasso do participante. Além disso, esse método sugere apenas que o gerenciador de transações escalone o controle, mas o escalonamento em si não é garantido. Se o escalonamento falhar, o usuário não será notificado e a transação será revertida.

O parâmetro promotableSinglePhaseNotification é usado para comunicar ao gerenciador de transações o resultado da tentativa de confirmar a transação interna do gerenciador de recursos. Se dados inconsistentes forem relatados, o gerenciador de transações gerará uma exceção. Se um InDoubt resultado for relatado, o gerenciador de transações procurará a notificação de resultado em sua própria inscrição interna e ignorará a resposta relatada.

Para obter mais informações sobre alistamentos e escalonamento de uma transação, consulte Escalonamento do Gerenciamento de Transações. Para obter mais informações sobre pspe, consulte Otimização usando confirmação de fase única e notificação de fase única promovível.

Aplica-se a

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification, Guid)

Origem:
Transaction.cs
Origem:
Transaction.cs
Origem:
Transaction.cs

Inscreve um Resource Manager que tem uma transação interna usando uma PSPE (inscrição de fase única passível de promoção).

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

Parâmetros

promotableSinglePhaseNotification
IPromotableSinglePhaseNotification

Uma interface IPromotableSinglePhaseNotification implementada pelo participante.

promoterType
Guid

O tipo do processador de transação distribuída.

Retornos

Uma implementação de interface SinglePhaseEnlistment que descreve a inscrição.

Comentários

Se o valor especificado para o promoterType parâmetro for TransactionInterop.PromoterTypeDtc, a transação deverá ser promovida pelo MSDTC e o byte[] retornado do IPromotableSinglePhaseNotification.Promote método deverá ser um token de propagação de transação MSDTC.

Se o valor especificado para o promoterType parâmetro nãoTransactionInterop.PromoterTypeDTC for, a transação não será promovida pelo MSDTC, mas sim pela implementação do chamador de IPromotableSinglePhaseNotification. Se essa chamada for bem-sucedida, haverá um conjunto de operações subsequentes na transação que retornará um TransactionPromotionException. Essas operações são:

  • Transaction.EnlistDurable

  • TransactionInterop.GetDtcTransaction

  • TransactionInterop.GetExportCookie

  • TransactionInterop.GetTransmitterPropagationToken

  • Serialização de um objeto Transaction

Aplica-se a