2010-03-28 120 views
2

我有一個控制器的方法具有以下簽名:如何在POST上傳遞Url參數?

[AcceptVerbs(HttpVerbs.Post)] 
public ActionResult UpdateValues(int id, MyViewModel[] array) 
{ 
} 

id通常被拾取作爲其他GET控制器方法(I具有執行此工作路由)的URL的一部分

我我成功地將array1從我的視圖中的表單傳遞給了控制器方法,但是我怎樣才能將id放到我的Url上,以便當用戶單擊提交按鈕時,控制器方法將拾取id

+0

您正在使用哪個版本? – Giorgi 2010-03-28 19:01:57

+0

ASP.NET MVC 2.0 RTM – 2010-03-28 19:02:10

回答

1

id參數可能設置爲可選: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) %>