我刚刚启动了MVC,我可以将ID传递给页面,但似乎无法让我的路由使用两个参数。有没有人有任何想法?
这是我的代码:
全局:
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Account", action = "Login", id = UrlParameter.Optional }
);
routes.MapRoute(
"EditVoucher", // Route name
"{controller}/{action}/{id}/{userid}", // URL with parameters
new { controller = "Admin", action = "EditVoucher", id = "", userid = "" } // Parameter defaults
);
**My controller:**
[HttpGet]
public ActionResult EditVoucher(int ID, int UserID)
{
}
**my link:**
@Html.ActionLink("[Edit]", "EditVoucher", new { Controller = "Admin", id = item.ID, userid = 2 })
this passes through the values fine but I end up with this sort of URL:
**/Admin/EditVoucher/2?userid=2**
thanks
答案 0 :(得分:3)
ActionLink
将使用可以满足您参数的第一条路线。
由于第一个(默认)路线也满足您的参数,因此您需要先将自定义路线放入。