Sdílet prostřednictvím


Transaction.EnlistPromotableSinglePhase Metoda

Definice

Zařadí správce prostředků, který má interní transakci pomocí propagační jednofázové zařazení (PSPE).

Přetížení

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification)

Zařadí správce prostředků, který má interní transakci pomocí propagační jednofázové zařazení (PSPE).

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification, Guid)

Zařadí správce prostředků, který má interní transakci pomocí propagační jednofázové zařazení (PSPE).

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification)

Zdroj:
Transaction.cs
Zdroj:
Transaction.cs
Zdroj:
Transaction.cs

Zařadí správce prostředků, který má interní transakci pomocí propagační jednofázové zařazení (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

Parametry

promotableSinglePhaseNotification
IPromotableSinglePhaseNotification

Rozhraní IPromotableSinglePhaseNotification implementované účastníkem.

Návraty

Implementace SinglePhaseEnlistment rozhraní, která popisuje zařazení.

Poznámky

Zařazení v transakci jsou nestálé; to znamená, že nepřežijí selhání účastníka. Kromě toho tato metoda navrhuje pouze správce transakcí eskalovat řízení, ale eskalace sama není zaručena. Pokud eskalace selže, uživatel nebude upozorněn a transakce se vrátí zpět.

Parametr promotableSinglePhaseNotification slouží ke komunikaci s správcem transakcí výsledek pokusu o potvrzení interní transakce správce prostředků. Pokud jsou hlášena nekonzistentní data, správce transakcí vyvolá výjimku. Pokud je hlášen výsledek InDoubt, správce transakcí vyhledá oznámení výsledku ve svém vlastním interním zařazení a ignoruje ohlášenou odpověď.

Další informace o zařazení a eskalaci transakce naleznete v tématu Správa transakcí eskalace. Další informace o PSPE naleznete v tématu Optimalizace pomocí jednofázového potvrzení a promotable jednofázové oznámení.

Platí pro

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification, Guid)

Zdroj:
Transaction.cs
Zdroj:
Transaction.cs
Zdroj:
Transaction.cs

Zařadí správce prostředků, který má interní transakci pomocí propagační jednofázové zařazení (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

Parametry

promotableSinglePhaseNotification
IPromotableSinglePhaseNotification

Rozhraní IPromotableSinglePhaseNotification implementované účastníkem.

promoterType
Guid

Typ distribuovaného procesoru transakcí.

Návraty

Implementace SinglePhaseEnlistment rozhraní, která popisuje zařazení.

Poznámky

Pokud je hodnota zadaná pro parametr promoterTypeTransactionInterop.PromoterTypeDtc, transakce musí být povýšen msDTC a byte[] vrácené z IPromotableSinglePhaseNotification.Promote metody musí být token šíření transakce MSDTC.

Pokud je hodnota zadaná pro parametr promoterTypeneníTransactionInterop.PromoterTypeDTC, transakce nebude povýšena msDTC, ale spíše implementací volajícího IPromotableSinglePhaseNotification. Pokud je toto volání úspěšné, existuje sada následných operací v transakci, která vrátí TransactionPromotionException. Mezi tyto operace patří:

  • Transaction.EnlistDurable

  • TransactionInterop.GetDtcTransaction

  • TransactionInterop.GetExportCookie

  • TransactionInterop.GetTransmitterPropagationToken

  • Serializace objektu Transaction

Platí pro