Questions tagged «asp.net-mvc-areas»



12
我的项目中多个同名控制器出现问题
我的ASP.NET MVC 3项目遇到以下错误: 找到了多个与名为“ Home”的控制器匹配的类型。如果为该请求提供服务的路由(“ Home / {action} / {id}”)未指定名称空间来搜索与该请求匹配的控制器,则会发生这种情况。如果是这种情况,请通过调用带有“名称空间”参数的“ MapRoute”方法的重载来注册此路由。 对“家”的请求已找到以下匹配的控制器:MyCompany.MyProject.WebMvc.Controllers.HomeController MyCompany.MyProject.WebMvc.Areas.Company.Controllers.HomeController 我的默认控制器文件夹中有一个HomeController,其类名为MyCompany.MyProject.WebMvc.Controllers.HomeController。 我的global.asax中的RegisterRoutes方法如下所示: public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with parameters new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults ); } 然后,我有一个名为Company的区域,该区域的默认控制器文件夹中有一个HomeController,其类名为MyCompany.MyProject.WebMvc.Areas.Company.Controllers.HomeController。 …

3
强制所有区域使用相同的布局
我有以下项目结构: / Views / Shared / _Layout; / Areas / Area1 / Views / ControllerName / Index; ... / Areas / AreaN / Views / ControllerName / Index。 有什么方法可以强制所有区域使用_Layout作为基本布局? 有什么办法可以做到,而无需添加_ViewStart文件的(例如,通过路由配置)可以吗? 也可以看看: 如何在ASP.NET MVC 3剃须刀ViewStart文件中指定不同的布局?

20
找不到路径控制器或未实现IController
我有一个带有语言选择的MVC4项目: 恩 nl fr 德 1个主要部分包括: 关于 通用(用于菜单) 联系 常问问题 家 和3个领域: 管理员 顾客 店 在每个区域中,我至少有一个控制器,例如在Admin中,我具有控制器概述以及相应的视图文件夹概述,其中包含index.aspx页面。 主页和所有主页(关于,常见问题等)都可以使用并且可以访问)。 但是,当我按照以下网址进行操作时:localhost:xxxx / en / admin / overview我收到错误消息: 找不到路径“ / en / admin / overview”的控制器或未实现IController。 即使路由正确(我可以使用Route Debugger看到),错误页面也显示当我要加载主菜单项时抛出了错误: <nav id="site-navigation" class="eightcol"> @Html.Action("MenuItems", "Common") </nav> -由于不相关而删除了代码- 一切似乎都井井有条,但是MVC似乎无法加载位于主要部分的菜单。 因此,问题的根源是:我可以在我的项目的主要部分(家庭,公共,关于等)中授予区域访问控制器的权限(例如Admin)吗?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.