我有一个带有以下签名的控制器方法:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult UpdateValues(int id, MyViewModel[] array)
{
}
id
通常作为其他GET控制器方法的Url的一部分被选中(我有一条工作路线可以做到这一点)
我已成功将array1
从我的视图中的表单传递给控制器方法,但如何将id
放到我的Url上,以便在用户点击提交时按钮,控制器方法将选择id
?
答案 0 :(得分:1)
id参数可能设置为optional:ASP.NET MVC 2 Optional URL Parameters,这是ASP.NET MVC 2中的默认值,因此如果没有名为“id”的表单元素,则不会传递它。
只需将您需要的参数作为表单的一部分而不是Url的一部分传递,如:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult UpdateValues(int UserID, MyViewModel[] array)
{
}
并在您看来:
<%= Html.Hidden("userID", Model.UserID) %>