使用MVC 5注册用户时出现问题

本文关键字:问题 用户 MVC 注册 使用 | 更新日期: 2023-09-27 18:21:24

我正在使用MVC 5注册用户,但在db.SaveChanges()行,我收到以下错误:

已成功提交对数据库的更改,但出现错误更新对象上下文时发生。ObjectContext可能处于不一致的状态。

内部异常消息:

AcceptChanges无法继续,因为对象的key值与CCD_ 4中的另一个对象冲突。确保在调用CCD_ 5之前密钥值是唯一的。

使用MVC 5注册用户时出现问题

错误表明上下文中有一个重复的键,因此无法保存。检查您的密钥生成,并确保您的密钥是唯一的。

更新

如果添加了一个复合密钥,则需要修改实体验证器。创建一个从IIdentityValidator继承的类,并在ValidateAsync方法中检查您的键。然后将这个类插入ApplicationUserManager(在Create方法中)。还要确保修改实体框架为您创建的索引。您需要使用以下注释将第二个关键成员添加到索引中:

[Index("UserNameIndex", Order = 2, IsUnique = true)]
public string SecondKeyMember { get; set; }

在CCD_ 10类中。

我认为这就是向ApplicationUser添加第二个关键成员所需要的全部内容。