我有一个失控的请求控制器,我想在几个控制器上划分操作,同时保持一个干净的 URL。我正在尝试路由,但没有成功。我已经阅读了一些关于路由的示例和教程,但是,虽然我理解了这些示例,但似乎没有任何内容适用于我的案例,而且我觉得不明智。我想要的是Requests/Approval
在我的 ApprovalController 而不是我的 RequestController 上处理 URL,所以我写了以下内容。
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
);
routes.MapRoute(
"Approval",
"Request/{controller}/{action}",
new { controller = "Approval", action="Index", id = "" }
);
}
但它不起作用。为什么?我的视图中有一个名为 Approval 的文件夹,其中有一个名为Index.cshtml
. 我应该如何编码 MapRoute?
编辑
我添加了我拥有的所有路线