2009-11-05 6 views
2

Je Transaction en utilisant la mise en œuvre TransactionScope avec l'aide de cet article MSDN http://msdn.microsoft.com/en-us/library/system.transactions.transactionscope.aspxla gestion des transactions avec TransactionScope

Je veux juste confirmer que est-il un problème lors de l'utilisation TransactionScope avec TableAdapters?

J'ai lu cet article et lire quelques problèmes avec cela, mais l'article était de 2,5 ans http://blog.falafel.com/2007/04/09/GettingTableAdaptersToParticipateInTransactions.aspx

J'espère que dans le dernier version du framework .Net, le problème a été résolu

Je suis en utilisant le framework .Net version 3.5

Merci

Répondre

2

Je ne le font pas chose que l'article est correct à 100%.

La portée de transaction modifiera automatiquement la transaction en une transaction distribuée si vous vous connectez à plusieurs bases de données ou si vous vous connectez à une base de données unique avec plusieurs connexions.

Le code utilisé par l'article génère plus d'une connexion à la base de données. Il essaie donc d'utiliser MS DTC (le coordinateur de transaction distribué), si cela n'est pas configuré correctement, la transaction échouera. Nous utilisons Transaction Scope partout où nous avons besoin d'une transaction, chaque fois que nous avons eu un problème, il était dû à notre code ou à la configuration.

+3

Cela diffère selon SQL2005 et SQL2008 - mais +1 comme il convient de garder à l'esprit. SQL2008 peut gérer la deuxième connexion sans faire la promotion de MS DTC. – Fenton

+0

@Sohnee, Merci pour le commentaire. Encore une raison de passer à SQL Server 2008. –

Questions connexes