目前我已定义此路线
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);
我想将/ Home / Action1 / id映射到/ Action1 / id 谁知道怎么样?
答案 0 :(得分:3)
你可能必须小心你所要求的路线,因为它可能比预期的要多。
一种解决方法是尽可能使用约束来限制该路线。
E.g。检查id是否为数字......
routes.MapRoute("ActionRoute",
"{action}/{id}",
new { controller = "Home", action = "Index", id="1" },
new { id = @"\d{1,6}" }
);
通过这种方式,您仍然可以在末尾指定通用的默认路由,以便在需要时捕获网站上的其余路由。
答案 1 :(得分:2)
看看这个问题How to Route /About to /Home/About
这不是(确切)答案,但我认为它反过来给你答案。
答案 2 :(得分:2)
routes.MapRoute(
"NewRoute",
"{id}",
new { controller = "Home", action = "Index", id = "" }
);
尝试一下,只要您默认控制器和操作它应该工作。不要忘记genratig链接Html.Action以使用新的路由名称。
为我的iPhone上写的格式道歉