在ASP.NET LogIn Control中使用电子邮件作为用户名

6 asp.net forms-authentication login

我想在ASP.NET应用程序中使用常规登录系统,但我想使用用户的电子邮件地址作为其用户名(在许多网站中很常见.)但是,似乎没有允许的属性或属性我做这样的事情; 用户名和电子邮件地址似乎总是分开的.可以这样做还是需要一些复杂的定制?谢谢.

Gre*_*reg 7

我假设你在谈论CreateUserWizard控件.

在设计器中,右键单击CreateUserWizard控件并选择"自定义创建用户步骤".这将允许您删除电子邮件字段行.我还建议添加RegularExpressionValidator来验证用户名的电子邮件格式.

要将用户名复制到电子邮件地址,请处理CreatingUser事件并在那里执行:

protected void CreateUserWizard1_CreatingUser( object sender, LoginCancelEventArgs e )
{
    CreateUserWizard1.Email = CreateUserWizard1.UserName;
}
Run Code Online (Sandbox Code Playgroud)


Jac*_*cob 6

为多个网站完成同样的事情后,最简单的方法是使用UserName EmailAddress字段的电子邮件地址,而不是尝试更改Membership API以使用UserName上的现有EmailAddress字段.