2011-01-18 74 views
4

這是我在大學裏做的一個項目。我們使用ASP.NET MVC2來構建一個網站的迷你原型,以展示我們可以做的事情。ASP.NET MVC2 - 將參數傳遞給控制器​​

現在,我有一個名爲ItemController.cs,視圖Item/Index.aspx,模型Item.cs和ViewModel ViewItems.cs控制器。我使用ViewModel將信息從控制器傳遞到視圖。我的問題是 - 我如何調用帶參數的控制器方法?目前,我用

Html.ActionLink("View Event Items", "Index", "Item") 

指向ItemControllerIndex()方法。假設我想要它參加int參數(Index(int eventId))我將如何編寫ActionLink以將參數傳遞給它?

此外,如果我有任何錯誤,我認爲這個東西的作品,請隨時指出。

回答

2

您需要使用routevalues對象(或RouteValuesDictionary)將值傳遞給您的操作。 在您的例子就應該是這樣的:

Html.ActionLink("View Event Items", "Index", "Item", new { eventId = 1}, new {}) 

...其中2是你的事件ID。第二個空對象(new {})用於html屬性。 Nate的答案很接近,但我不認爲有一個重載將routevalues對象作爲第二個參數。

+0

感謝您的快速和正確的答案! – 2011-01-18 23:26:05

0

我認爲

Html.ActionLink("View Event Items", new { controller = "Item", action = "Index", id = 5 }) 

應該讓你在你正在尋找去附近。

相關問題