我怎么能有一个有两个Id的动作链接。(我正在使用区域)。Id2被呈现为查询字符串。
控制器
public ActionResult View(int id, int id2)
路线
context.MapRoute(
"Admin_default",
"Admin/{controller}/{action}/{id}",
new { action = "Index", id = UrlParameter.Optional }
);
context.MapRoute(
"Admin_default2",
"Admin/{controller}/{action}/{id}/{id2}",
new { action = "Index"}
);
ActionLink
@Html.ActionLink("Click", "News/View", new { area = "Admin", id = 1, id2 = 2 }, null)
渲染链接
/Admin/News/View/1?id2=2
预期链接
/Admin/News/View/1/2
请先尝试添加更具体的路由(Admin_default2)。
因此,您的映射代码看起来像:
context.MapRoute(
"Admin_default2",
"Admin/{controller}/{action}/{id}/{id2}",
new { action = "Index"}
);
context.MapRoute(
"Admin_default",
"Admin/{controller}/{action}/{id}",
new { action = "Index", id = UrlParameter.Optional }
);