/ / C # ADO.NET pour une seule opération SQL nécessaire pour annuler une transaction à une exception? - sql-server, transactions, ado.net, commit, annulation

C # ADO.NET pour une seule opération SQL nécessaire pour annuler une transaction à une exception? - sql-server, transactions, ado.net, commit, annulation

J'emballe ma seule opération d'écriture SQL dans un SqlTransaction

Si une exception survient le SqlCommand.ExcuteNonQuery() , faut-il appeler SqlTransaction.Rollback() ?

Exceptionnellement, quel est l'état SqlTransaction laissé à l'intérieur ? Volonté SQL Server annuler l'opération par elle-même?

Réponses:

0 pour la réponse № 1

L'état de la transaction dépendra de l'erreurgravité. Certaines erreurs SQL Server annuleront automatiquement la transaction et d'autres non. Je vous suggère d'invoquer la méthode Rollback dans un try / catch dans le bloc d'exception externe.