J'utilise asp.net SqlMembershipProvider et LinqToSql dans une application de loisir/apprentissage. J'ai quelques propriétés d'utilisateur que je garde dans LinqtoSql, ainsi mon flux est: Membership.CreateUser -> MyClass.AddUserDetails. Je voudrais emballer le tout dans une transaction, donc si le bit myclass échoue, je peux annuler le bit d'adhésion. Des suggestions sur la façon de le faire?Comment faire pour conclure une transaction autour de Membership.CreateUser?
Répondre
Les fournisseurs ne prennent pas explicitement les transactions, j'ai demandé cette fonction il y a quelque temps:
http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=102268
Je pense que si vous utilisez la classe TransactionScope il devrait fonctionner, mais vous aurez les frais généraux d'une transaction coordonnée par MSDTC.
et les maux de tête de DTC. L'amener à travailler dans un environnement partagé par exemple ... sob ... – Sklivvz
Vous pouvez définir la propriété Transaction du DataContext pour le faire participer à une transaction que vous avez déjà.
Mon expérience de vie réelle (arrivé plus d'une fois):
- programmeur junior écrit un site.
- Lors de l'examen du code, j'attrape la transaction manquante entre la création de l'utilisateur et la création du profil (généralement avec un SqlProvider personnalisé)
- Nous emballons tout dans une transaction DTC.
- Rien ne fonctionne sur l'ordinateur du programmeur junior.
- Corriger le DTC sur l'ordinateur du programmeur junior.
- Déployer vers un environnement d'hébergement partagé.
- Rien ne fonctionne dans l'environnement d'hébergement.
- Discutez pendant 4 heures avec l'hébergeur essayant de réparer leur DTC.
- Supprimez la transaction car le site a pour aller en ligne.
- Prier.
Je ne aime pas vraiment plus de membres ...
Même expérience ici, moins la partie hébergement. Bien que je ne sois pas sûr pourquoi TransactionScope veut toujours exiger DTC, quand il ne devrait pas en avoir besoin .... au moins quand l'adhésion est impliquée. –
Est-ce toujours l'état de l'art à votre connaissance, c'est-à-dire, utilisez-vous encore l'adhésion et sans transactions, ou avez-vous trouvé une meilleure alternative? – ChrisW
@ChrisW afaik plus personne n'utilise vraiment l'adhésion – Sklivvz
- 1. Transaction pour l'adhésion ASP .net
- 2. Membership.CreateUser numéro
- 3. Comment faire passer une transaction de Navision à un composant C# enregistré pour COM interop?
- 4. Quelle méthode de CreateUserWizard appelle Membership.CreateUser?
- 5. Comment implémenter une transaction dans vb.net?
- 6. Flex/ActionScript - faire pivoter Sprite autour de son centre
- 7. Effectuer un appel EJB sans transaction dans une transaction
- 8. Comment créer une transaction LINQ to SQL?
- 9. Pourquoi la fonction Membership.CreateUser ne fait rien?
- 10. Utilisation de Raphael JS pour faire flotter des formes autour de l'écran
- 11. en utilisant une transaction pour éviter une course
- 12. Faire un Html.ActionLink autour d'une image dans ASP.NET MVC?
- 13. Transaction distribuée terminée. Soit enrôler cette session dans une nouvelle transaction ou la transaction NULL
- 14. Pourquoi une insertion de 1M est-elle plus lente sans transaction que dans une transaction?
- 15. WPF Popup: Comment mettre une bordure autour du popup?
- 16. Tracer une bordure autour de mkmapview, scrollview et webview
- 17. Comment faire pivoter un objet autour d'un point à l'aide de quaternions?
- 18. Comment faire pour casser une grande classe
- 19. Comment faire pour supprimer une macro
- 20. Comment faire pour exécuter une application Qt?
- 21. comment détecter et programmer autour des secousses pour l'iphone
- 22. Comment faire le calcul pour une date
- 23. comment ajouter une bordure d'image autour d'une image?
- 24. Créer une classe wrapper pour appeler une fonction pre et post autour de fonctions existantes?
- 25. comment envelopper une étiquette html autour d'une étiquette d'image?
- 26. Comment puis-je couper une transaction au printemps avec JPA?
- 27. Linq2SQL: SubmitChanges couverts par une transaction?
- 28. Jouer autour de la réflexion
- 29. Comment faire pour faire correspondre le filtre Microsoft.Matrix au canevas?
- 30. Subsonic Erreur de transaction
supprimés balises redondantes – Sklivvz