本文介绍了ASP.NET身份使用电子邮件,而不是用户名的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我怎么可以使用电子邮件,而不是用户名在新的ASP.NET识别系统?
我试图修改 RegisterViewModel
类:
[显示(名字=电子邮件地址)]
[必需(的ErrorMessage =电子邮件地址是必需)]
[EmailAddress的(的ErrorMessage =电子邮件地址无效)]
公共字符串用户名{获得;组; }
但是当我输入mail地址,我得到的错误:
用户名[email protected]是无效的,只能包含字母或数字。
解决方案
您有2个选项通过关闭该验证程序来解决它,也可以创建自己的。
您可以关闭它是这样的:
UserManager.UserValidator =新UserValidator<&TUSER GT;(的UserManager)
{
AllowOnlyAlphanumericUserNames = FALSE
};
How can I use email instead of user name in the new ASP.NET identity system?
I tried to change the RegisterViewModel
class:
[Display(Name = "Email address")]
[Required(ErrorMessage = "The email address is required")]
[EmailAddress(ErrorMessage = "Invalid Email Address")]
public string UserName { get; set; }
but when I enter an mail adress I am getting the error:
User name [email protected] is invalid, can only contain letters or digits.
解决方案
You have 2 options to solve it by either turning off that validator, or create your own UserValidator.
You could turn it off like this:
UserManager.UserValidator = new UserValidator<TUser>(UserManager)
{
AllowOnlyAlphanumericUserNames = false
};
这篇关于ASP.NET身份使用电子邮件,而不是用户名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!