尝试从后期操作返回ViewResult时出现以下错误:
未找到视图“索引”或其主控,或者没有视图引擎支持搜索的位置。搜索了以下位置: 〜/浏览/首页/ Index.cshtml 〜/查看/共享/ Index.cshtml 〜/浏览/首页/ Home.cshtml
〜/查看/共享/ Home.cshtml 〜/浏览/首页/的Index.aspx
〜/浏览/首页/ Index.ascx 〜/查看/共享/的Index.aspx
〜/查看/共享/ Index.ascx 〜/浏览/首页/ Home.master
〜/查看/共享/ Home.master 〜/浏览/首页/ Home.vbhtml
〜/查看/共享/ Home.vbhtml
我的观点肯定得到认可,因为它适用于GET行动。
在POST操作中返回ViewResult的代码是:
return View("Index", "Home", Model);
有人能说明为什么这不起作用吗?
更多背景信息:
get动作显示视图正常。 post动作实际上是一个不同的url但返回相同的视图。这是造成问题的后置动作。 GET和POST操作都在同一个控制器HomeController
上。
这是(剥离的)控制器:
public class HomeController : Controller
{
[HttpGet]
public ActionResult Index()
{
return View(new LoginModelBase());
}
[HttpPost]
public ActionResult Login(UsernameLoginModel Model)
{
...
return View("Index", "Home", Model);
}
}
答案 0 :(得分:2)
我刚刚意识到它是什么!我正在使用View(...)
方法的错误重载。
应该是:
View("Index", Model);