Transactions Dapper et imbriquées

.net dapper sql-server transactions transactionscope

Question

Est-il possible de spécifier une transaction imbriquée en tant que paramètre IDbTransaction, lors de l'utilisation d'une méthode Dapper?

Je souhaite valider une transaction interne via Dapper, toutes les données et tous les verrous associés devant être libérés et disponibles uniquement pour la transaction externe, avec tous les verrous externes toujours en place avant que la transaction externe ne soit validée.

Voir ceci pour un exemple concret: http://technet.microsoft.com/en-us/library/ms189336(v=sql.105).aspx

J'utilise SQL Server 2008, si cela peut vous aider.

Réponse acceptée

Dapper utilise les transactions ado.net. De plus, comme de nombreux fournisseurs ado.net prennent en charge les transactions ambiantes (TransactionScope), cela est généralement pris en charge, mais ne nécessite aucun code supplémentaire. Si vous pouvez faire ce que vous voulez avec les transactions ado.net: bien. Si vous pouvez faire ce que vous voulez avec TSQL: fine - émettez simplement les commandes appropriées. Vraiment, ça revient à: pouvez-vous faire ça depuis ado.net?

Il serait intéressant, par exemple, d'essayer une procédure stockée avec une transaction explicite dans une connexion avec BeginTransaction de la connexion.




Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi