asp.net-core - 如何在 ASP.NET Core Identity 中允许空用户名

标签 asp.net-core asp.net-core-identity

我的应用程序的注册工作流程只允许在确认电子邮件地址后设置用户名。使用 Microsoft.AspNetCore.Identity 1.1.1.0 中的默认值,Entity Framework 在数据库中生成一个 AspNetUsers 表,其中 UserName 列可为空。但是,如果我尝试向 UserManager.CreateAsync() 提供具有空 UserName 的 IdentityUser 实例,则会收到错误消息:“用户名 '' 无效,只能包含字母或数字。”。

我想避免设置临时的非空值,因为用户名应该是唯一的,但不是电子邮件地址。其他解决方法(例如 guid)看起来就像一个黑客。

为空用户名允许空值的最佳方法是什么?

最佳答案

看起来用户名不打算为空。一个单独的 DisplayName 属性或类似的可能是要走的路。 https://github.com/aspnet/Identity/issues/1186

关于asp.net-core - 如何在 ASP.NET Core Identity 中允许空用户名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43807787/

相关文章:

c# - 对预检请求的响应未通过访问控制检查 : The value of the 'Access-Control-Allow-Credentials' header in the response is ''

asp.net-core - 从 ASP.NET Core MVC Web 应用程序 (RC2) 引用完整框架库项目?

c# - 如何使用包含点 (.) 的字符串路由参数在客户端 blazor 中进行路由?

c# - 身份用户管理器 DeleteAsync DbUpdateConcurrencyException

c# - 在 Xunit 单元测试中使用 AuthorizeAsync() 测试用户是否具有特定权限

c# - ASP.NET Core 中必需的查询字符串参数

asp.net-mvc - 如何在MVC6或AspNet Core或IdentityCore中更改PasswordValidator

c# - 如果用户使用 Google 登录,ASP.NET Core Identity 2.0 SignoutAsync 不会注销用户

c# - 检查身份电子邮件 token 有效性

c# - 身份不工作,无法访问身份数据