OleDbConnection.EnlistDistributedTransaction(ITransaction) Méthode

Définition

S’inscrit dans la transaction spécifiée en tant que transaction distribuée.

public:
 void EnlistDistributedTransaction(System::EnterpriseServices::ITransaction ^ transaction);
public void EnlistDistributedTransaction (System.EnterpriseServices.ITransaction transaction);
member this.EnlistDistributedTransaction : System.EnterpriseServices.ITransaction -> unit
Public Sub EnlistDistributedTransaction (transaction As ITransaction)

Paramètres

transaction
ITransaction

Référence à un ITransaction existant dans lequel s’inscrire.

Remarques

la nouveauté de ADO.NET 2,0 est la prise en charge de l’utilisation de la EnlistTransaction méthode pour l’inscription dans une transaction distribuée. Étant donné qu’il inscrit une connexion dans une Transaction instance, EnlistTransaction tire parti des fonctionnalités disponibles dans l' System.Transactions espace de noms pour gérer les transactions distribuées, ce qui en fait préférable à EnlistDistributedTransaction à cet effet. Pour plus d’informations, consultez Transactions distribuées.

Vous pouvez continuer à vous inscrire dans une transaction distribuée existante à l’aide de la EnlistDistributedTransaction méthode si l’inscription automatique est désactivée. L’inscription dans une transaction distribuée existante garantit que, si la transaction est validée ou restaurée, les modifications apportées par le code dans la source de données sont également validées ou restaurées. Pour plus d’informations sur les transactions distribuées, consultez transactions distribuées.

EnlistDistributedTransaction retourne une exception si OleDbConnection a déjà démarré une transaction à l’aide de BeginTransaction . Toutefois, si la transaction est une transaction locale démarrée au niveau de la source de données (par exemple, en exécutant explicitement l’instruction BEGIN TRANSACTION à l’aide d’un OleDbCommand objet), EnlistDistributedTransaction restaure la transaction locale et s’inscrit dans la transaction distribuée existante comme demandé. Vous ne recevrez pas de notification indiquant que la transaction locale a été annulée et qu’elle est responsable de la gestion des transactions locales qui n’ont pas été démarrées à l’aide de BeginTransaction .

S’applique à

Voir aussi