Partager via


System.Transactions Espace de noms

Contient des classes qui vous permettent d’écrire votre propre application transactionnelle et gestionnaire de ressources. Plus précisément, vous pouvez créer et participer à une transaction (locale ou distribuée) avec un ou plusieurs participants.

Classes

Nom Description
CommittableTransaction

Décrit une transaction commitable.

DependentTransaction

Décrit un clone d’une transaction fournissant une garantie que la transaction ne peut pas être validée tant que l’application ne sera pas mise au repos en ce qui concerne le travail sur la transaction. Cette classe ne peut pas être héritée.

DistributedTransactionPermission

Autorisation demandée lors System.Transactions de l’escalade de la gestion d’une transaction à MSDTC. Cette classe ne peut pas être héritée.

DistributedTransactionPermissionAttribute

Autorise l’application d’actions DistributedTransactionPermission de sécurité au code à l’aide d’une sécurité déclarative. Cette classe ne peut pas être héritée.

Enlistment

Facilite la communication entre un participant de transaction inscrit et le gestionnaire de transactions pendant la phase finale de la transaction.

PreparingEnlistment

Facilite la communication entre un participant de transaction inscrit et le gestionnaire de transactions pendant la phase de préparation de la transaction.

SinglePhaseEnlistment

Fournit un ensemble de rappels qui facilitent la communication entre un participant inscrit pour la validation à phase unique et le gestionnaire de transactions lorsque la SinglePhaseCommit(SinglePhaseEnlistment) notification est reçue.

SubordinateTransaction

Représente une transaction non rootée qui peut être déléguée. Cette classe ne peut pas être héritée.

Transaction

Représente une transaction.

TransactionAbortedException

Exception levée lorsqu’une opération est tentée sur une transaction qui a déjà été restaurée ou qu’une tentative est effectuée pour valider la transaction et l’abandon de la transaction.

TransactionEventArgs

Fournit des données pour les événements de transaction suivants : DistributedTransactionStarted, TransactionCompleted.

TransactionException

Exception levée lorsque vous tentez d’effectuer un travail sur une transaction qui ne peut pas accepter de nouveau travail.

TransactionInDoubtException

Exception levée lorsqu’une opération est tentée sur une transaction qui est en doute ou qu’une tentative est effectuée pour valider la transaction et que la transaction devient InDoubt.

TransactionInformation

Fournit des informations supplémentaires concernant une transaction.

TransactionInterop

Facilite l’interaction entre System.Transactions les composants précédemment écrits pour interagir avec MSDTC, COM+ou System.EnterpriseServices. Cette classe ne peut pas être héritée.

TransactionManager

Contient des méthodes utilisées pour la gestion des transactions. Cette classe ne peut pas être héritée.

TransactionManagerCommunicationException

Exception levée lorsqu’un gestionnaire de ressources ne peut pas communiquer avec le gestionnaire de transactions.

TransactionPromotionException

Exception levée lorsqu’une promotion échoue.

TransactionScope

Crée un bloc de code transactionnel. Cette classe ne peut pas être héritée.

Structures

Nom Description
TransactionOptions

Contient des informations supplémentaires qui spécifient les comportements de transaction.

Interfaces

Nom Description
IDtcTransaction

Décrit une transaction DTC.

IEnlistmentNotification

Décrit une interface qu’un gestionnaire de ressources doit implémenter pour fournir des rappels de notification de validation en deux phases pour le gestionnaire de transactions lors de l’inscription à la participation.

IPromotableSinglePhaseNotification

Décrit un objet qui agit en tant que délégué de validation pour une transaction non distribuée interne à un gestionnaire de ressources.

ISimpleTransactionSuperior

Représente une transaction qui n’est pas une transaction racine, mais peut être réaffectée pour être gérée par le MSDTC.

ISinglePhaseNotification

Décrit un objet de ressource qui prend en charge l’optimisation de validation par phase unique pour participer à une transaction.

ITransactionPromoter

Décrit une transaction déléguée pour une transaction existante qui peut être réaffectée pour être gérée par msDTC si nécessaire.

Énumérations

Nom Description
DependentCloneOption

Contrôle le type de transaction dépendante à créer.

EnlistmentOptions

Détermine si l’objet doit être inscrit pendant la phase de préparation.

EnterpriseServicesInteropOption

Spécifie la façon dont les transactions distribuées interagissent avec les transactions COM+.

IsolationLevel

Spécifie le niveau d’isolation d’une transaction.

TransactionScopeAsyncFlowOption

Spécifie si le flux de transaction entre les continuations de threads est activé pour TransactionScope.

TransactionScopeOption

Fournit des options supplémentaires pour créer une étendue de transaction.

TransactionStatus

Décrit l’état actuel d’une transaction distribuée.

Délégués

Nom Description
HostCurrentTransactionCallback

Fournit un mécanisme permettant à l’environnement d’hébergement de fournir sa propre notion par défaut de Current.

TransactionCompletedEventHandler

Représente la méthode qui gère l’événement TransactionCompleted d’une Transaction classe.

TransactionStartedEventHandler

Représente la méthode qui gère l’événement DistributedTransactionStarted d’une TransactionManager classe.

Remarques

L’infrastructure System.Transactions rend la programmation transactionnelle simple et efficace dans toute la plateforme en prenant en charge les transactions lancées dans SQL Server, ADO.NET, MSMQ et le Microsoft Distributed Transaction Coordinator (MSDTC). Il fournit à la fois un modèle de programmation explicite basé sur la Transaction classe, ainsi qu’un modèle de programmation implicite à l’aide de la TransactionScope classe, dans laquelle les transactions sont automatiquement gérées par l’infrastructure. Il est vivement recommandé d’utiliser le modèle implicite plus facile pour le développement. Pour plus d’informations sur l’écriture d’une application transactionnelle, consultez Écriture d’une application transactionnelle.

System.Transactions fournit également des types pour vous permettre d’implémenter un gestionnaire de ressources. Le gestionnaire de transactions natif de l’infrastructure System.Transactions permet aux ressources volatiles ou à une seule inscription de ressources durables de valider ou de restaurer efficacement.

Le gestionnaire de transactions augmente également de manière transparente les transactions locales vers des transactions distribuées en coordonnant par le biais d’un gestionnaire de transactions sur disque comme le DTC, lorsqu’un gestionnaire de ressources durable supplémentaire s’inscrit à une transaction. L’infrastructure offre deux façons System.Transactions clés d’améliorer les performances.

  • L’escalade dynamique, ce qui signifie que l’infrastructure System.Transactions engage uniquement le MSDTC lorsqu’elle est réellement requise pour une transaction.

  • Les enrôlements promouvables, qui permettent à une ressource, telle qu'une base de données, de prendre en charge la transaction à condition qu'elle soit la seule entité participant à ladite transaction. Plus tard, si nécessaire, l’infrastructure System.Transactions peut toujours augmenter la gestion de la transaction vers MSDTC. Cela réduit davantage le risque d’utilisation du MSDTC.