0

我写了以下代码:

@Html.ActionLink("Edit", "EditPost", new { id = item.PostID })

它显示 URL,.../Post/EditPost/32 但实际上我想显示它...../Post/EditPost?ID=32

在 Razor View 中怎么可能???

4

2 回答 2

1

URL 构造通常由路由决定,如果您想强制它使用查询字符串,那么只需从中删除任何参数概念,例如

routes.MapRoute(
    "EditPostRoute",
    "Post/EditPost",
    new { controller = "Edit", action = "EditPost" }
);

您的@Html.ActionLink代码应该生成.../Post/EditPost?ID=32.

于 2013-07-19T12:00:56.800 回答
0

将Action Edit 参数从 更改intstring。然后它会如你所愿显示

public ActionResult Edit(string ID)
{
     =======
     =======
}

@Html.ActionLink("Edit", "EditPost", new { ID = item.PostID },null)

另一种解决方案id = UrlParameter.OptionalGlobal.asax/Route Table

于 2013-07-19T12:02:30.563 回答