Transaction.EnlistPromotableSinglePhase Méthode

Définition

Inscrit un gestionnaire de ressources qui a une transaction interne à l’aide d’une inscription à phase unique promotable (PSPE).

Surcharges

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification)

Inscrit un gestionnaire de ressources qui a une transaction interne à l’aide d’une inscription à phase unique promotable (PSPE).

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification, Guid)

Inscrit un gestionnaire de ressources qui a une transaction interne à l’aide d’une inscription à phase unique promotable (PSPE).

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification)

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

Inscrit un gestionnaire de ressources qui a une transaction interne à l’aide d’une inscription à phase unique promotable (PSPE).

C#
public bool EnlistPromotableSinglePhase(System.Transactions.IPromotableSinglePhaseNotification promotableSinglePhaseNotification);

Paramètres

promotableSinglePhaseNotification
IPromotableSinglePhaseNotification

Interface IPromotableSinglePhaseNotification implémentée par le participant.

Retours

Implémentation d’interface SinglePhaseEnlistment qui décrit l’inscription.

Remarques

Les inscriptions dans une transaction sont volatiles ; autrement dit, ils ne survivent pas à l’échec du participant. En outre, cette méthode suggère uniquement le gestionnaire de transactions d’escalader le contrôle, mais l’escalade elle-même n’est pas garantie. En cas d’échec de l’escalade, l’utilisateur n’est pas averti et la transaction est restaurée.

Le paramètre promotableSinglePhaseNotification est utilisé pour communiquer au gestionnaire de transactions le résultat de la tentative de validation de la transaction interne du gestionnaire de ressources. Si des données incohérentes sont signalées, le gestionnaire de transactions lève une exception. Si un résultat InDoubt est signalé, le gestionnaire de transactions recherche la notification de résultat dans son propre inscription interne et ignore la réponse signalée.

Pour plus d’informations sur les inscriptions et l’escalade d’une transaction, consultez d’escalade de gestion des transactions. Pour plus d’informations sur PSPE, consultez Optimisation à l’aide de la validation à phase unique et de la notification à phase unique promotable.

S’applique à

.NET 10 et autres versions
Produit Versions
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification, Guid)

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

Inscrit un gestionnaire de ressources qui a une transaction interne à l’aide d’une inscription à phase unique promotable (PSPE).

C#
public bool EnlistPromotableSinglePhase(System.Transactions.IPromotableSinglePhaseNotification promotableSinglePhaseNotification, Guid promoterType);

Paramètres

promotableSinglePhaseNotification
IPromotableSinglePhaseNotification

Interface IPromotableSinglePhaseNotification implémentée par le participant.

promoterType
Guid

Type du processeur de transactions distribué.

Retours

Implémentation d’interface SinglePhaseEnlistment qui décrit l’inscription.

Remarques

Si la valeur spécifiée pour le paramètre promoterType est TransactionInterop.PromoterTypeDtc, la transaction doit être promue par MSDTC et le byte[] retourné par la méthode IPromotableSinglePhaseNotification.Promotedoit être un jeton de propagation de transaction MSDTC.

Si la valeur spécifiée pour le paramètre promoterType n’est pasTransactionInterop.PromoterTypeDTC, la transaction ne sera pas promue par MSDTC, mais plutôt par l’implémentation de l’appelant de IPromotableSinglePhaseNotification. Si cet appel réussit, il existe un ensemble d’opérations suivantes sur la transaction qui retournent un TransactionPromotionException. Ces opérations sont les suivantes :

  • Transaction.EnlistDurable

  • TransactionInterop.GetDtcTransaction

  • TransactionInterop.GetExportCookie

  • TransactionInterop.GetTransmitterPropagationToken

  • Sérialisation d’un objet Transaction

S’applique à

.NET 10 et autres versions
Produit Versions
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1