Transaction.EnlistPromotableSinglePhase Methode

Definition

Trägt einen Ressourcen-Manager mit einer internen Transaktion mithilfe einer heraufstufbaren Einphaseneintragung (PSPE) ein.

Überlädt

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification)

Trägt einen Ressourcen-Manager mit einer internen Transaktion mithilfe einer heraufstufbaren Einphaseneintragung (PSPE) ein.

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification, Guid)

Trägt einen Ressourcen-Manager mit einer internen Transaktion mithilfe einer heraufstufbaren Einphaseneintragung (PSPE) ein.

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification)

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

Trägt einen Ressourcen-Manager mit einer internen Transaktion mithilfe einer heraufstufbaren Einphaseneintragung (PSPE) ein.

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

Parameter

promotableSinglePhaseNotification
IPromotableSinglePhaseNotification

Eine vom Teilnehmer implementierte IPromotableSinglePhaseNotification-Schnittstelle.

Gibt zurück

Eine SinglePhaseEnlistment-Schnittstellenimplementierung, die die Eintragung beschreibt.

Hinweise

Die Eintragslisten in einer Transaktion sind flüchtig; das heißt, sie überleben das Scheitern des Teilnehmers nicht. Darüber hinaus schlägt diese Methode nur dem Transaktions-Manager vor, die Kontrolle zu eskalieren, aber die Eskalation selbst ist nicht garantiert. Wenn die Eskalation fehlschlägt, wird der Benutzer nicht benachrichtigt, und für die Transaktion wird ein Rollback ausgeführt.

Der Parameter promotableSinglePhaseNotification wird verwendet, um dem Transaktions-Manager das Ergebnis des Commits für die interne Transaktion des Ressourcen-Managers mitzuteilen. Wenn inkonsistente Daten gemeldet werden, löst der Transaktions-Manager eine Ausnahme aus. Wenn ein InDoubt Ergebnis gemeldet wird, sucht der Transaktions-Manager in seiner eigenen internen Einschreibung nach der Ergebnisbenachrichtigung und ignoriert die gemeldete Antwort.

Weitere Informationen zu Eintragen und Eskalationen einer Transaktion finden Sie unter Transaktionsverwaltungseskalation. Weitere Informationen zu PSPE finden Sie unter Optimization Using Single Phase Commit and Promotable Single Phase Notification.For more information on PSPE, see Optimization Using Single Phase Commit and Promotable Single Phase Notification.

Gilt für:

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification, Guid)

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

Trägt einen Ressourcen-Manager mit einer internen Transaktion mithilfe einer heraufstufbaren Einphaseneintragung (PSPE) ein.

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

Parameter

promotableSinglePhaseNotification
IPromotableSinglePhaseNotification

Eine vom Teilnehmer implementierte IPromotableSinglePhaseNotification-Schnittstelle.

promoterType
Guid

Der Typ des Prozessors der verteilten Transaktion.

Gibt zurück

Eine SinglePhaseEnlistment-Schnittstellenimplementierung, die die Eintragung beschreibt.

Hinweise

Wenn der für den promoterType Parameter angegebene Wert ist TransactionInterop.PromoterTypeDtc, muss die Transaktion von MSDTC heraufgestuft werden, und die byte[] von der IPromotableSinglePhaseNotification.Promote -Methode zurückgegebene muss ein MSDTC-Transaktionsverteilungstoken sein.

Wenn der für den promoterType Parameter angegebene Wert nichtTransactionInterop.PromoterTypeDTC ist, wird die Transaktion nicht von MSDTC heraufgestuft, sondern von der Implementierung des IPromotableSinglePhaseNotificationAufrufers. Wenn dieser Aufruf erfolgreich ist, gibt es eine Reihe von nachfolgenden Vorgängen für die Transaktion, die einen TransactionPromotionExceptionzurückgeben. Diese Vorgänge sind:

  • Transaction.EnlistDurable

  • TransactionInterop.GetDtcTransaction

  • TransactionInterop.GetExportCookie

  • TransactionInterop.GetTransmitterPropagationToken

  • Serialisierung eines Transaction-Objekts

Gilt für: