我正在使用 ASP.Net MVC。这是我来自名为 Course 的控制器的代码片段:
public ActionResult List(int id)
{
var viewmodel.ShowUrl = Url.Action("Show", "Course");
...
}
public ActionResult Show(int id)
{
...
}
viewmodel.ShowUrl 获取“id”参数的任何值。所以viewmodel.ShowUrl变成了“/Course/Show/151”(id的值为151);我希望能够根据用户交互在客户端上设置 id 部分。我希望 viewmodel.ShowUrl 的值为“/Course/Show”。
这对我来说似乎是一个错误。我没有告诉 Url.Action 包含一个 id 值。它是自己做的。如果我想设置 id 值,那么我会这样做:
var viewmodel.ShowUrl = Url.Action("Show", "Course", new {id = somevalue});
那么,如何防止 MVC 添加 id 值呢?我可以将 viewmodel.ShowUrl 硬编码为“/Course/Show”,但这似乎是一个笨拙的解决方案。谢谢。