2010-06-18 5 views
1

J'utilise les fonctions de connexion et de gestion des utilisateurs ASP.NET intégrées. Existe-t-il un moyen de simplement identifier si un nom d'utilisateur ou une adresse e-mail est déjà enregistré? J'aurais pensé que cela fait partie de FormsAuthentication ou similaire, mais ne peut pas trouver une telle fonction.Vérifiez si un nom d'utilisateur a été enregistré

Répondre

3

Vérifiez si Membership.GetUser method renvoie une valeur nulle ou non.

Si vous souhaitez créer un nouvel utilisateur et que vous effectuez cette vérification dans le cadre de ce processus, essayez d'appeler Membership.CreateUser method et vérifiez le MembershipCreateStatus pour connaître la raison de l'échec, en cas d'échec.

1

La seule façon correcte de procéder consiste à essayer d'enregistrer/créer l'utilisateur immédiatement et de gérer les résultats de cette action. Vous n'avez pas besoin d'activer le nouvel utilisateur tant qu'il n'a pas terminé le processus d'enregistrement et qu'il peut supprimer le compte s'il abandonne votre site avant de le terminer, mais tout ce que vous faites vous ouvre à un problème de concurrence.

+0

C'est une option viable seulement dans le processus d'enregistrement. Cependant, vous pouvez vérifier la disponibilité d'un nom d'utilisateur avec un appel AJAX avant de soumettre le formulaire. –

+0

@Mehrdad - la chose à faire est de créer l'utilisateur dans l'appel ajax. –

+0

Je ne pense pas que ça vaut le coup. Ce serait créer un tas de comptes que l'utilisateur tape dans le champ de texte. La probabilité d'une telle situation de concurrence n'est pas élevée et si cela se produit, vous demanderiez simplement à l'utilisateur de réessayer. –

Questions connexes