Quand “SqlConnection ne prend pas en charge parallèle transactions” arriver?

J'ai une tonne de code de travail qui a été ici pendant des mois et aujourd'hui j'ai vu l'exception suivante enregistré:

System.InvalidOperationException
SqlConnection does not support parallel transactions.
    at System.Data.SqlClient.SqlInternalConnection.BeginSqlTransaction(
       IsolationLevel iso, String transactionName)
    at System.Data.SqlClient.SqlConnection.BeginTransaction(
       IsolationLevel iso, String transactionName)
    at my code here

et j'aimerais comprendre pourquoi cette exception a été levée. J'ai lu MSDN description de BeginTransaction() et tout ce qu'elle dit, c'est que bien, parfois, cette exception peut être lancée.

Ce n'cette exception veux dire exactement? Qu'est-ce que la lacune dans mon code que je devrais être à la recherche d'?

  • Êtes-vous utilisation régulière SqlConnection/SqlCommmand/SqlDataAdapter ou êtes-vous d'utiliser un ORM (tel que EF ou L2 ou autres)? Et le code à l'aide de transactions explicites ou TransactionScopes? Aussi, pouvez-vous poster un exemple de code autour de l'erreur d'enregistrement/de jeter de l'exception?
  • Cochez cette réponse: stackoverflow.com/questions/407320/... Il est sur le même problème.
  • Si je pouvais limiter le problème je ne voudrais pas poser cette question. Je ne demande pas "mon code ne fonctionne pas, s'il vous plaît aider le plus vite possible", je me demande ce que je dois regarder dans mon code.
  • Afin de cerner le problème, utilisez-vous régulièrement SqlConnection/SqlCommmand/SqlDataAdapter ou êtes-vous d'utiliser un ORM (tel que EF ou L2 ou autres)? Et le code à l'aide de transactions explicites ou TransactionScopes?
  • Le code utilise SQL??? choses directement, sans aucun middleware et il utilise SqlTransaction pour les transactions.
InformationsquelleAutor sharptooth | 2013-10-24