我正在使用 ASP.NET Identity,并扩展了 IdentityUser 类以添加我自己的数据。
我正在使用数据注释来设置某些字段的显示名称等,但是由于 UserName 字段是内置的,我无法对其进行注释。因为我打算在该字段中存储一个电子邮件地址,所以我真的想重命名这个地址!
如果数据注释是一个非首发(我认为他们是),有没有其他方法可以达到相同的结果?
我正在使用 ASP.NET Identity,并扩展了 IdentityUser 类以添加我自己的数据。
我正在使用数据注释来设置某些字段的显示名称等,但是由于 UserName 字段是内置的,我无法对其进行注释。因为我打算在该字段中存储一个电子邮件地址,所以我真的想重命名这个地址!
如果数据注释是一个非首发(我认为他们是),有没有其他方法可以达到相同的结果?
您不能只覆盖 UserName 属性并添加注释吗?
我处理它的方式就是不暴露UserName
. 我有一个单独的Email
属性,然后UserName
在后台保存时设置为相同的东西。
此外,如果您打算使用电子邮件地址作为用户名,则需要具备以下条件:
UserManager.UserValidator = new UserValidator<User>(UserManager) { AllowOnlyAlphanumericUserNames = false };
否则,它将不允许您将用户名设置为有效的电子邮件地址。