gpt4 book ai didi

c# - 有没有办法在使用 Amazon.AspNetCore.Identity.Cognito 时解决 ConfirmEmailAsync(TUser user, string token) NullReferenceException?

转载 作者:行者123 更新时间:2023-12-04 10:43:10 25 4
gpt4 key购买 nike

我正在使用 Amazon.AspNetCore.Identity.Cognito 并且在使用 UserManager 的“ConfirmEmailAsync(TUser user, string token)”时,我收到了 NullReferenceException。

提供截图:
The Error

我做的代码:

[HttpPost]
[ActionName("Confirm")]
public async Task<IActionResult> Confirm_Post(ConfirmModel model)
{
if(ModelState.IsValid)
{
var user = await _userManager.FindByEmailAsync(model.Email);
if(user == null)
{
ModelState.AddModelError("NotFound", "A user with given email address was not found");
}

var result = await _userManager.ConfirmEmailAsync(user, model.Code).ConfigureAwait(false);
if(result.Succeeded)
{
return RedirectToAction("Index", "Home");
}
else
{
foreach(var item in result.Errors)
{
ModelState.AddModelError(item.Code, item.Description);
}
}
}
}

请告诉我如何解决这个问题,因为我是 AWS 的新手,这似乎令人费解。

最佳答案

好的,我得到了解决方案,现在它不再导致异常。
我用 ConfirmSignUpAsync(TUser 用户,字符串确认代码, bool 强制别名创建) 方法而不是 ConfirmEmailAsync(TUser 用户,字符串 token ) 它有效!!

var result = await ((CognitoUserManager<CognitoUser>)_userManager).ConfirmSignUpAsync(user, model.Code, true);
if(result.Succeeded)
{
return RedirectToAction("Index", "Home");
}

代码在下面共享,如果有人觉得它有帮助,那将是一种乐趣。
谢谢大家!!

关于c# - 有没有办法在使用 Amazon.AspNetCore.Identity.Cognito 时解决 ConfirmEmailAsync(TUser user, string token) NullReferenceException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59838289/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com