相当新的asp.net mvc我没有知识改变某些事情的运作方式。这是其中之一
控制器操作索引显示登录页面
控制器操作登录,[HttpPost]
获取模型并对其进行验证
在这种情况下,验证失败,URL似乎设置为http://blah_blah/Users/Login
(由于控制器上没有登录操作,因此请求时会导致404)
那么创建一个Login操作只能解决问题或我得到的任何其他解决方案吗?
答案 0 :(得分:6)
为什么不能将Login
操作重命名为Index
。
public ActionResult Index()
{
return View();
}
[HttpPost]
public ActionResult Index(LoginModel model)
{
return View();
}
或
您可以使用ActionName
属性
[HttpPost, ActionName("Index")]
public ActionResult Login(LoginModel model)
{
return View();
}
答案 1 :(得分:1)
你必须return View("Index");
答案 2 :(得分:0)
试试这个:
return RedirectToAction("Index", "User", new { returnUrl, errorMessage, etc });