2009-06-22 4 views
6

Je souhaite utiliser le système de connexion standard dans une application ASP.NET, mais je souhaite utiliser l'adresse e-mail de l'utilisateur comme nom d'utilisateur (ce qui est courant sur de nombreux sites Web) .) Cependant, il semble n'y avoir aucune propriété ou attribut pour me permettre de faire quelque chose comme ça; Le nom d'utilisateur et l'adresse e-mail semblent toujours être séparés. Est-il possible de le faire ou une personnalisation complexe est-elle nécessaire? Merci.Utiliser le courrier électronique comme nom d'utilisateur dans ASP.NET LogIn Control

Répondre

6

Après avoir fait la même chose pour plusieurs sites Web, il a fini par être plus facile à utiliser simplement l'adresse e-mail pour le UserName et les champs EMAILADDRESS plutôt que d'essayer de changer l'API d'adhésion à utiliser le champ EmailAddress existant sur Nom d'utilisateur.

+0

est-il un moyen de cacher simplement la boîte e-mail, (évidemment, je peux le copier sur certains code à l'arrière.) Ou, pouvez-vous être plus précis dans ce que vous avez fait? Merci. –

+0

ne pourriez-vous pas juste utiliser un certain jquery pour autopopuler la boîte d'email après qu'ils remplissent le nom d'utilisateur? – Jason

7

Je suppose que vous parlez du contrôle CreateUserWizard.

Dans le concepteur, cliquez avec le bouton droit sur le contrôle CreateUserWizard et sélectionnez «Personnaliser la création d'une étape utilisateur». Cela vous permettra de supprimer la ligne du champ email. Je recommande également d'ajouter un RegularExpressionValidator to validate the email format pour le nom d'utilisateur.

Pour copier le nom d'utilisateur à l'adresse e-mail, gérer l'événement CreatingUser et le faire là-bas:

protected void CreateUserWizard1_CreatingUser(object sender, LoginCancelEventArgs e) 
{ 
    CreateUserWizard1.Email = CreateUserWizard1.UserName; 
} 
+0

Et si l'utilisateur a besoin de changer son adresse e-mail? L'adhésion ASP.NET suppose un nom d'utilisateur fixe ... – DeepSpace101

+0

Appelez-le scope creep? – Greg

+1

Oui, c'est vrai. Mais j'ai demandé votre avis parce que si je poste une nouvelle question, elle sera fermée en tant que copie (presque) de celle-ci. Nous y travaillons actuellement, c'est donc une réelle préoccupation. N'avait pas l'intention d'être nitpicky ... – DeepSpace101

Questions connexes