ASP.NET身份使用电子邮件,而不是用户名 [英] ASP.NET identity use email instead of user name

查看:327
本文介绍了ASP.NET身份使用电子邮件,而不是用户名的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我怎么可以使用电子邮件,而不是用户名在新的ASP.NET识别系统?

我试图修改 RegisterViewModel 类:

  [显示(名字=电子邮件地址)]
[必需(的ErrorMessage =电子邮件地址是必需)]
[EmailAddress的(的ErrorMessage =电子邮件地址无效)]
公共字符串用户名{获得;组; }

但是当我输入mail地址,我得到的错误:

 用户名fsdfsd@fsdfsd.de是无效的,只能包含字母或数字。


解决方案

您有2个选项通过关闭该验证程序来解决它,也可以创建自己的 UserValidator

您可以关闭它是这样的:

  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 fsdfsd@fsdfsd.de 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身份使用电子邮件,而不是用户名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆