Partager via


Transactions manuelles et ADO.NET

Les fournisseurs .NET du client SQL et de OLE DB prennent en charge les transactions manuelles dans le Common Language Runtime. Dans ADO.NET, vous pouvez utiliser l'un ou l'autre de ces fournisseurs .NET pour contrôler les transactions.

Les deux fournisseurs comprennent un ensemble d'objets managés qui créent une connexion à une base de données, commencent une transaction et valident ou restaurent cette transaction. La principale différence entre ces deux fournisseurs concerne leurs mécanismes de connexion. Le fournisseur .NET du client SQL propose un ensemble d'objets qui appellent SQL Server directement. Le fournisseur .NET de OLE DB utilise quant à lui un code OLE DB natif pour permettre l'accès aux données.

Utilisez l'objet de connexion ADO.NET Connection.BeginTransaction pour commencer une transaction locale. Inscrivez une commande dans cette transaction à l'aide de la propriété Transaction de l'objet Command. Utilisez l'objet Transaction pour valider ou annuler les modifications apportées à la source de données en fonction de la réussite ou de l'échec des composants de la transaction.

L'inscription est automatique par défaut et peut être désactivée. Si elle désactivée, vous pouvez faire une inscription manuelle. Inscrivez-vous dans une transaction distribuée existante à l'aide de Connection.EnlistDistributedTransaction. Si la transaction distribuée vient à être annulée ou validée dans son intégralité, les modifications apportées par le code dans la source de données seront elles aussi validées ou annulées.

Pour un exemple de transaction utilisant ADO.NET, consultez Exécution des transactions.

Voir aussi

Transactions manuelles | Transactions automatiques et classes .NET Framework