ASP.NET 自定义用户验证器实现中是否存在身份检查电子邮件



在我的应用程序中,我创建了UserValidator的自定义版本,以便我可以自己配置错误消息。

目前,它基本上是此处找到的实现,但具有其他资源文件引用。

我卡住的部分是在ValidateEmailAsync方法中。它包含以下行:

var email = await Manager.GetEmailStore().GetEmailAsync(user).WithCurrentCulture();

这给出了它无法访问GetEmailStore()方法的错误,因为它是UserManager对象的内部方法。寻找修复程序会导致我遇到这个问题,建议改用这一行:

var email = await Manager.GetEmailAsync(user.Id).ConfigureAwait(false);

但是执行它会给出异常,即它找不到具有给定 ID 的任何用户。

有没有其他方法可以检索 IUser 对象的电子邮件属性?如果需要,这是我当前的代码。

像这样获取用户,然后获取电子邮件;

var user = await Manager.GetUserAsync(User);
var email = user.Email;

相关内容

  • 没有找到相关文章

最新更新