Asp.net mvc 3 ASP.NET MVC3区域操作视图位置
这是我第一次在MVC见面。 我有区域“管理”和控制器在那里的“新闻”与行动“名单” 在调试中,我在Asp.net mvc 3 ASP.NET MVC3区域操作视图位置,asp.net-mvc-3,Asp.net Mvc 3,这是我第一次在MVC见面。 我有区域“管理”和控制器在那里的“新闻”与行动“名单” 在调试中,我在 public ActionResult List() { return View(); // Breakpoint } 我到了那里 但引擎找不到视图“列表” 我得到一个错误: The view 'List' or its master was not found or no view engine supports the searched locations. The followin
public ActionResult List()
{
return View(); // Breakpoint
}
我到了那里
但引擎找不到视图“列表”
我得到一个错误:
The view 'List' or its master was not found or no view engine supports the searched locations. The following locations were searched:
~/Views/News/List.cshtml
~/Views/News/List.vbhtml
~/Views/Shared/List.cshtml
~/Views/Shared/List.vbhtml
查看位置区域/administration/News/List.cshtml中的出口
为什么Razor不将区域名称粘贴到视图位置
更新:
我找到了解决办法:
在调用控制器中的
view()
方法时,ASP.NET MVC希望您具有相应操作的匹配视图。因此,基本上它告诉您必须在项目的Views/Shared
或Views/News/
文件夹中有一个名为List.cshtml
(或List.vbhtml
)的文件。(您的控制器被称为NewsController
,按照惯例,会在您可以访问的名称上搜索视图,以了解其工作原理
Areas是一种MVC功能,用于组织应用程序上的代码,但您可能缺少一些配置。有关详细信息。我经常使用Areas,但我如何说这种行为对我来说是新的,我不知道问题出在哪里。
Route route = Routes.MapRoute(name, url, defaults, constraints, namespaces);
route.DataTokens["area"] = AreaName;