c# - ASP.NET 标识 : Make other fields in AspNetUsers unique key

标签 c# asp.net asp.net-identity

我正在研究 ASP.NET 身份。默认情况下,AspNetUsers 表 带有几列,例如:ID、UserName、HashPassword、Email、EmailConfirmed、Phone 等。

默认情况下,ID 列是Primary KeyUserName 具有Unique Constraint

如何使 Email 和/或 Phone 等其他字段具有与 UserName< 相同的 unique constraint/?

到目前为止我做了什么:

我设法手动将唯一约束添加到数据库,但是,与 UserName 字段不同,我无法在应用程序级别进行验证。例如:如果用户尝试使用相同的用户名注册帐户,UserName 字段将显示错误消息“Name XXX is already taken”。

最佳答案

要在 UserManager 层强制执行唯一性,您可以实现自己的 IUserValidator 并检查您的自定义唯一性规则

关于c# - ASP.NET 标识 : Make other fields in AspNetUsers unique key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27004071/

相关文章:

c# - OWIN 安全 - 如何实现 OAuth2 刷新 token

c# - 尝试使用 COM 组件时出现识别错误 : 0x800442B6,

c# - Entity Framework : Create database column without property in model class

asp.net - 从 nopcommerce 中删除购物车功能

c# - 在 ExtDateOnly 中禁用日期

asp.net-core - 身份服务器 4 + Asp.Net 核心身份。使用 PIN 授权

asp.net - SessionSecurityToken lifeTime 与 sessionTokenRequirement 生存期相同吗?

c# - 使用 System.DirectoryServices.AccountManagement 时出现 DirectoryServicesCOMException

c# - 如何使用 MVVM 更新 ContextMenu 的 ItemSource

c# - 检查 url 是否包含 C# 中的某些单词?