这是我在大学里做的一个项目。我们正在使用ASP.NET MVC2构建一个网站的迷你原型,以显示我们可以做什么。
现在,我有一个名为ItemController.cs
的控制器,一个视图Item/Index.aspx
,一个模型Item.cs
和一个ViewModel ViewItems.cs
。我使用ViewModel将信息从控制器传递给视图。我的问题是 - 如何使用参数调用控制器方法?目前,我使用
Html.ActionLink("View Event Items", "Index", "Item")
指向ItemController
的{{1}}方法。假设我希望它采用Index()
参数(int
)如何编写ActionLink以将参数传递给它?
另外,如果我认为这些内容有误,我们可以随意指出它们。
答案 0 :(得分:2)
您需要使用routevalues对象(或RouteValuesDictionary)将值传递给您的操作。 在您的示例中,它看起来像这样:
Html.ActionLink("View Event Items", "Index", "Item", new { eventId = 1}, new {})
...其中2是您的活动ID。第二个空对象(new {})用于html属性。 Nate的答案很接近,但我认为没有一个重载将routevalues对象作为第二个参数。
答案 1 :(得分:0)
我认为
Html.ActionLink("View Event Items", new { controller = "Item", action = "Index", id = 5 })
应该让你到达你想去的地方附近。