【发布时间】:2017-10-30 00:59:31
【问题描述】:
我想将视图模型添加到TempData,以便像这样将它传递给另一个控制器(参考最后两行):
[HttpPost("register")]
public async Task<IActionResult> Register(RegisterViewModel rvm)
{
if (ModelState.IsValid)
{
var result = await _authManager.RegisterUserAsync(rvm.FullName, rvm.Email, rvm.Password);
if (result.IsSuccessful)
{
return RedirectToAction("Login", "Home", new { message = result.Message });
}
else
{
TempData["rvm"] = rvm;
return RedirectToAction("Register", "Home");
}
}
TempData["rvm"] = rvm;
return RedirectToAction("Register", "Home");
}
问题是,在执行此操作后,RedirectToAction 方法实际上不起作用,我只剩下一个空白页面(网址也没有改变)。我补充说,没有TempData 行,一切正常。
任何建议我在这里做错了什么?
编辑:
主页/注册
[HttpGet("register")]
public IActionResult Register()
{
RegisterViewModel rvm = (RegisterViewModel)TempData["rvm"];
return View(rvm);
}
【问题讨论】:
-
请出示主页/注册码。
-
我编辑了我的问题。它看起来像这样。
标签: c# asp.net-mvc controller viewmodel