din*_*tom 5 c# asp.net-core-2.0
任何人都可以解释为什么具有个人用户标识的默认Asp.Net Web应用程序模板在管理控制器中出现错误?
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> SendVerificationEmail(IndexViewModel model)
{
if (!ModelState.IsValid)
{
return View(model);
}
var user = await _userManager.GetUserAsync(User);
if (user == null)
{
throw new ApplicationException($"Unable to load user with ID '{_userManager.GetUserId(User)}'.");
}
var code = await _userManager.GenerateEmailConfirmationTokenAsync(user);
var callbackUrl = Url.EmailConfirmationLink(user.Id, code, Request.Scheme);
var email = user.Email;
await _emailSender.SendEmailConfirmationAsync(email, callbackUrl);
StatusMessage = "Verification email sent. Please check your email.";
return RedirectToAction(nameof(Index));
}
Run Code Online (Sandbox Code Playgroud)
在这个代码行中;
return View(model);
Run Code Online (Sandbox Code Playgroud)
视图为红色,因为没有SendVerificationEmail视图.这是正常的吗?这可以解决吗?
我可以指定一个路由到喜欢的视图
if (!ModelState.IsValid)
{
return View(nameof(Index),model);
}
Run Code Online (Sandbox Code Playgroud)
但这真的是Asp.Net团队打算从这里开始的吗?
看起来,并且我向一些人展示过这可能是一个错误,他们也同意这一点。不确定如何报告,但考虑到模型是 IndexViewModel,我通过将返回结果路由到索引视图来修复它。
if (!ModelState.IsValid)
{
return View(nameof(Index),model);
}
Run Code Online (Sandbox Code Playgroud)
不确定这是否是 Asp.Net 默认应用程序团队打算重新路由的地方,但这就是我要进行的修复(kludge)。有更好的解决方案欢迎评论。
| 归档时间: |
|
| 查看次数: |
173 次 |
| 最近记录: |