我已经配置了一个我可以省略操作的路由,它将使用默认路由,同时将操作留在网址之外。 IE浏览器。 /Group/12345
而不是/Group/Index/12345
。路线有效。
问题是我在使用Html.ActionLink
构建锚标记时遇到问题,/Group/12345
会输出/Group/Index/12345
。它似乎只给了我context.MapRoute(
name: "Group",
url: "/Group/{id}",
defaults: new { controller = "Group", action = "Index" },
namespaces: new [] { "Website.Controllers" },
constraints: new { id = @"\d+" });
context.MapRoute(
name: "Default",
url: "/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
namespaces: new[] { "Website.Controllers" });
。
我的路线设置如下:
Html.ActionLink("View", "", "Group", new { id = 12345 }, new { @class = "btn btn-default" })
到目前为止,我构建链接的尝试看起来像这样:
action
我尝试将null和空字符串作为EditorFor()
参数传递,但它仍然会将' Index'在网址中。