Articles of transactionscope

Alternative TransactionScope sans DTC

existe-t-il une alternative à transactionScope qui ne nécessite pas d’activer le DTC? Dans la transaction, je dois effectuer deux opérations: Créer un utilisateur (à l’aide de l’appartenance – fournisseur d’adhésion SQL) Effectuez une opération d’insertion.

Transactions nestedes avec TransactionScope

Si vous avez quelque chose comme ça: IBinaryAssetStructureRepository rep = new BinaryAssetStructureRepository(); var userDto = new UserDto { id = 3345 }; var dto = new BinaryAssetBranchNodeDto(“name”, userDto, userDto); using (var scope1 = new TransactionScope()) { using(var scope2 = new TransactionScope()) { //Persist to database rep.CreateRoot(dto, 1, false); scope2.Complete(); } scope1.Dispose(); } dto = rep.GetByKey(dto.id, […]

Hiérarchie de TransactionScope

Est-il possible d’avoir une hiérarchie d’étendues de transaction? Si la scope de la transaction externe est éliminée, qu’adviendra-t-il des modifications apscopes à la scope de la transaction interne? Mon problème particulier est que j’ai un code de test qui exécute un code ayant une scope de transaction. Lorsque j’appelle un deuxième ensemble de code avec […]

Comment envelopper IDbTransactions dans un TransactionScope

J’ai plusieurs méthodes de code qui ressemblent à ceci: using (var connection = this.connectionFactory.GetConnection()) { connection.Open(); using (var transaction = connection.BeginTransaction()) { using (var command = connection.CreateCommand()) { command.Transaction = transaction; command.CommandText = “foo”; command.ExecuteNonQuery(); transaction.Commit(); } } } Je dois maintenant appeler plusieurs de ces méthodes ensemble dans une transaction externe. J’ai donc fait […]

Où devrais-je effectuer une action lors de la mise en œuvre de IEnlistmentNotification?

J’essaie de créer un “gestionnaire de ressources” personnalisé en implémentant l’interface IEnlistmentNotification . Cette interface a les méthodes suivantes: Préparer() Commettre() Retour en arrière () Dans le doute() Bien qu’il soit clair que le code de retour arrière doive être placé dans la méthode Rollback (), je ne sais pas quelle méthode dois-je implémenter le […]

TransactionScope fonctionne-t-il avec des connexions préexistantes?

J’ai un code comme celui-ci: try { using (TransactionScope scope = new TransactionScope()) { some_db_function(); for (i = 0; i < 10; i++) { some_other_db_function(); } scope.Complete(); } } catch (Exception ex) { MessageBox.Show(ex.Message + " all done transactions will rollback"); } et à l’intérieur des fonctions de firebase database quelque chose comme ceci se […]

TransactionScope Timeout se produit-il prématurément?

J’utilise TransactionScope pour effectuer des insertions par lots et des mises à jour. Le problème, c’est que je reçois des exceptions de délai d’expiration pour une opération de 30 minutes même lorsque je règle le délai d’expiration du TransactionScope sur une heure. Également après l’exception, il insère une quantité apparemment aléatoire des enregistrements du lot. […]

SqlConnection et éviter la promotion au MSDTC

Lorsque nous avons besoin d’accéder à la firebase database dans notre application, nous utilisons les modèles suivants: Pour l’interrogation, nous avons une classe de fabrique statique avec une méthode CreateOpenConnection qui ne fait rien de plus que de new SqlConnection(myConnectionSsortingng) et appelle Open() dessus. Cette méthode est appelée avant d’effectuer une requête et la connexion […]

TransactionScope Complete () ne valide pas la transaction avant de quitter l’instruction USING

scope.Complete(); ce comportement étrange dans lequel la transaction est scope.Complete(); uniquement lorsque l’ using scope.Complete(); et non lors de l’appel de scope.Complete(); using (TransactionScope scope = new TransactionScope(TransactionScopeOption.RequiresNew)) { scope.Complete(); // data still doesn’t show in db } // now shows in db Comment puis-je valider la transaction avant de quitter l’instruction using ?

NHibernate avec plusieurs bases de données et transactions

Nous avons quelques problèmes à comprendre comment utiliser au mieux NHibernate. Nous avons généralement un nombre relativement important de bases de données SQL Server assez petites (en termes de nombre de tables) plutôt qu’une firebase database avec beaucoup d’objects. Nous examinons diverses options pour gérer des usines à sessions multiples et l’avons probablement sous contrôle. […]