【发布时间】:2014-09-25 08:43:23
【问题描述】:
我已经覆盖了一系列用于 ASP.NET Identity 2.0 的类,以便它们使用电子邮件地址字段而不是电子邮件字段。
当尝试创建一个用户时,它说The UserName field is required. 我尝试用[Index(IsUnique = false)] 覆盖我的ApplicationUser 类中的用户名字段,该类继承自IdentityUser 但这只会导致唯一约束和非唯一正在创建索引。
如何覆盖IdentityUser 类以使用户名可以为空且不唯一,因为我不想使用它。
注意: 我完全知道您可以使用 UserValidator 类中的 AllowOnlyAlphanumericUserNames 属性将电子邮件存储在用户名字段中。我真的不喜欢这种方法,只想删除这个约束,这样我就可以在没有用户名的情况下存储记录。我将修改我需要使用用户名查看电子邮件地址的任何功能。
【问题讨论】:
-
根据 Identity Framework 的当前实现,无法根据您的要求使用现有的开箱即用方法。我建议您使用与电子邮件相同的用户名部分并设置 AllowOnlyAlphanumericUserNames = true。
标签: c# asp.net asp.net-mvc asp.net-identity