提问人:masoud mazloum 提问时间:10/4/2022 更新时间:10/5/2022 访问量:180
在 ASP.NET Core 中重置密码中返回 null
Return Null in Reset Password in ASP.NET Core
问:
我有一个忘记和重置密码的功能。 忘记密码工作正确,发送电子邮件正确,并返回电子邮件活动代码。 但是为什么 for reset 总是返回 null ?
RessetPassword 函数:
[Route("ResetPassword")]
[HttpGet]
public IActionResult ResetPassword()
{
return View();
}
[Route("ResetPassword")]
[HttpPost]
public async Task<IActionResult> ResetPassword(ResetPasswordViewModel reset)
{
if (ModelState.IsValid)
{
var result = await _userService.ResetPassword(reset);
switch (result)
{
.......
break;
}
}
return View(reset);
}
但总是返回 null 只是活动代码电子邮件、密码和重新密码正确 frim 视图:
@model AryanITC.Domain.ViewModels.Account.ResetPasswordViewModel
<input asp-for="ConfirmPassword" type="password" class="pass >
<span asp-validation-for="ConfirmPassword" class="field-validation-valid col-md-12 text-danger"></span>
<button type="submit" class="submit text-center"> submit </button>
</form>
</div>
正如我所说,忘记密码后返回此链接:
https://localhost:44385/resetpassword?EmailActiveCode=0e08ae5f498d4485a7d0ccc265ebfa1a
但从视图来看,EmailactiveCode 返回 NULL???
这是我的观点模型:
public class ResetPasswordViewModel
{
public string EmailActiveCode { get; set; }
public string Password { get; set; }
public string ConfirmPassword { get; set; }
}
答:
1赞
Zhi Lv
10/5/2022
#1
正如我所说,忘记密码后返回此链接:
https://localhost:44385/resetpassword?EmailActiveCode=0e08ae5f498d4485a7d0ccc265ebfa1a
使用上述请求 URL 访问 ResetPassword 端点时,会先转到 ResetPassword Get 方法,因此,在 ResetPassword Get 方法中,可以添加一个参数来接收 EmailActiveCode,然后将视图模型返回到 ResetPasswrod 页面,代码如下:
[Route("ResetPassword")]
[HttpGet]
public IActionResult ResetPassword(string EmailActiveCode)
{
var reset = new ResetPasswordViewModel();
reset.EmailActiveCode = EmailActiveCode;
return View(reset);
}
评论
0赞
masoud mazloum
10/5/2022
非常感谢,它有效。我有一些问题要进入一些方法,现在我明白了。非常感谢。
评论