ASP.NET身份使用电子邮件而不是用户名

如何在新的ASP.NET身份系统中使用电子邮件而不是用户名?

我试图更改RegisterViewModel类:

 [Display(Name = "Email address")] [Required(ErrorMessage = "The email address is required")] [EmailAddress(ErrorMessage = "Invalid Email Address")] public string UserName { get; set; } 

但当我输入邮件地址时,我收到错误:

 User name fsdfsd@fsdfsd.de is invalid, can only contain letters or digits. 

您有2个选项可以通过关闭该validation器来解决它,或者创建自己的UserValidator 。

你可以这样关掉它:

 UserManager.UserValidator = new UserValidator(UserManager) { AllowOnlyAlphanumericUserNames = false };