我通过从 VS 2013 模板复制代码,在我的 MVC 应用程序中实现了 ASP.NET Identity。基本工作正常,但我无法让重置密码工作。当我显示“忘记密码”页面时,会生成一封包含令牌的电子邮件。此令牌由以下方法返回:
UserManager.GeneratePasswordResetTokenAsync(user.Id)
当我单击链接时,重置密码表单打开并让用户输入他们的电子邮件地址和新密码。然后调用更改密码功能:
UserManager.ResetPasswordAsync(user.Id, model.Code, model.Password);
这对我来说看起来不错,但结果总是“无效令牌”,我不明白为什么会这样。
有人知道为什么它不起作用吗?令牌到底存储在哪里?我认为它必须在AspNetUsers
桌子周围某处的数据库中......