是否有可能在没有行动的情况下创建路线?
我有这个默认路线:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
Run Code Online (Sandbox Code Playgroud)
但我也想有这样的URL:http://mysite/bar/1234这里1234是ID和bar是控制器.
所以我创建了以下路线:
routes.MapRoute(
name: "BarRoute",
url: "{controller}/{id}",
defaults: new { controller = "bar", action = "Index", id = UrlParameter.Optional }
);
Run Code Online (Sandbox Code Playgroud)
但是当我导航到http://mysite/bar/1234它时,它说没有找到资源.我在第二条路上做错了什么?
routes.MapRoute(
name: "BarRoute",
url: "{controller}/{id}",
defaults: new { controller = "Bar", action = "Index" },
constraints: new { id = @"\d+" }
);
Run Code Online (Sandbox Code Playgroud)
您必须考虑到您的路线必须放置在适当的位置 - 在更一般的路线之前,例如:
routes.MapRoute(
name: "BarRoute",
routes.MapRoute(
name: "Default",
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
940 次 |
| 最近记录: |