asp.net-mvc – 子文件夹中的控制器
|
路线表 public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"SubFolder",// Route name
"SubFolder/ChildController",new { controller = "ChildController",action = "Index" },new[] { "Practise.Areas.SOProblems.Controllers.SubFolder" });
routes.MapRoute(
"Default",// Route name
"{controller}/{action}",// URL with parameters
new { controller = "Home",action = "Index" } // Parameter defaults
);
}
This only works when the url is like this localhost:2474/SOProblems/ChildController/index This does not works when the url is like this localhost:2474/SOProblems/SubFolder/ChildController/index 你能告诉我什么是失踪的吗? 解决方法
这是正常现象您的路由模式如下所示:SubFolder / ChildController,而不是SubFolder / ChildController / index.除此之外,您在错误的地方定义了路线.您在您的主要路线定义中定义了它,而不是在您的区域路线定义中.所以摆脱主路由的自定义路由定义,并将其添加到SOProblemsAreaRegistration.cs文件(这是您的SOProblems路由应注册的地方): public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"SubFolderRoute","SOProblems/SubFolder/ChildController",new[] { "Practise.Areas.SOProblems.Controllers.SubFolder" }
);
context.MapRoute(
"SOProblems_default","SOProblems/{controller}/{action}/{id}",new { action = "Index",id = UrlParameter.Optional }
);
}
此外,由于您的路由模式(SOProblems / SubFolder / ChildController)无法指定操作名称,因此在此控制器上只能有一个操作,这将是您在这种情况下注册(索引)的默认操作. 如果你想在这个控制器上有更多的动作,而索引是默认的,你应该把它放在你的路由模式中: context.MapRoute(
"SubFolder","SOProblems/SubFolder/ChildController/{action}",new[] { "Practise.Areas.SOProblems.Controllers.SubFolder" }
);
在这两种情况下,您的主路由定义可以保留其默认值: public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default","{controller}/{action}",new { controller = "Home",action = "Index" }
);
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 如何在ASP.NET MVC 4中定义catch(绝对)所有
- ASP.NET Core 2.1身份:如何删除默认UI剃刀页面?
- asp.net-core-2.1 – 如何在asp.net Core 2.1.1中为Identit
- asp.net-mvc – ServiceStack应该是MVC应用程序中的服务层还
- .net – 优雅的foreach – 在Razor构建
- asp.net-mvc – 如何在ASP .NET MVC中对参数进行URL编码
- asp.net-mvc – MVC中的模型含义
- asp.net-mvc – MVC 5 HttpErrors控制器/动作
- ASP.NET MVC捆绑缓存. (检测css文件更改)(内部行为)
- asp.net – 如何在DLL中添加Web服务引用
- 令人敬畏的ASP.NET和C#教程初学者
- asp.net-mvc – ASP.NET MVC是否需要安装在我的生
- asp.net-mvc – 偶尔__RequestVerificationToken
- asp.net-core – CoreCLR中的哈希算法
- asp.net-mvc – System.Web.Optimization与Micro
- asp.net – 将特定文件夹映射到web.config中的Ht
- asp.net-mvc – ASP.NET MVC控制器动作设计
- vbscript – 经典ASP 3.0从Recordset创建数组
- asp.net-web-api – ASP.NET WebApi测试 – 断言
- .net – vNext是完全“基于约定的编程”吗?
