2008-11-20 6 views
4

Je voudrais faire deux opérations de base de données dans une transaction. Ces deux opérations sontTransaction pour l'adhésion ASP .net

  1. Effectuez une opération d'insertion.
  2. Créer un utilisateur (à l'aide de membres - fournisseur d'appartenances sql)

J'ai essayé TransactionScope mais il est allé à la transaction distribuée à cette ligne: - Membership.CreateUser ("test", "mot de passe", "[email protected]");

Comment est-ce que je peux faire ceci avec la transaction légère puisque je n'ai que DB?

Merci d'avance.

Répondre

4

L'implémentation actuelle de TransactionScope n'utilisera qu'une transaction légère si vous utilisez une connexion à une seule base de données. Il n'est donc pas possible de réaliser cela dans votre scénario.

2

J'ai un problème similaire. Ma résolution est (je ne suis toujours pas sûr que ça va marcher) pour télécharger le code du fournisseur d'appartenance ASP.Net et le reconstruire, en piratant la classe SqlConnectionHolder.

0

Je cherchais ce sujet et je pense avoir trouvé une réponse. Il s'applique uniquement à SQL Server 2008. Il ne nécessite pas de modifications de l'espace de noms System.Transactions ou de notre code d'application. C'est intéressant. ;)

http://blogs.msdn.com/b/adonet/archive/2008/03/26/extending-lightweight-transactions-in-sqlclient.aspx

Hope this helps!

+2

Fournir plus d'informations sur la solution, alors juste un lien rendra votre réponse plus utile. –

Questions connexes