ASP.NET MVC2 - 将参数传递给控制器

发布于 2024-10-12 15:57:07 字数 547 浏览 1 评论 0原文

这是我在大学做的一个项目。我们使用 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 来将参数传递给它?

另外,如果我对这些东西的运作方式有任何错误,请随时指出。

This is for a project I'm doing in the university. We're using ASP.NET MVC2 to build a mini-prototype of a website just to show what we can do.

Now, I have a controller called ItemController.cs, a view Item/Index.aspx, a model Item.cs and a ViewModel ViewItems.cs. I use the ViewModel to pass information to the view from the controller. My question is - how do I call a controller method with parameters? Currently, I use

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

which points to ItemController's Index() method. Say I want it to take an int parameter (Index(int eventId)) How would I write the ActionLink to pass the parameter to it?

Also, if I have any errors in how I think this stuff works, please feel free to point them out.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

禾厶谷欠 2024-10-19 15:57:07

您需要使用routevalues对象(或RouteValuesDictionary)将值传递给您的操作。
在您的示例中,它看起来像这样:

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

...其中 2 是您的事件 ID。第二个空对象(new {})用于 html 属性。 Nate 的答案很接近,但我不认为存在将routevalues 对象作为第二个参数的重载。

You'll need to use the routevalues object (or RouteValuesDictionary) to pass values to your action.
In your example it would look like this:

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

...where 2 is your event id. The second empty object (new {}) is for html attributes. Nate's answer is close, but I don't think there is an overload that takes a routevalues object as the second parameter.

痞味浪人 2024-10-19 15:57:07

我认为这

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

应该能让你到达你想去的地方附近。

I think that

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

should get you in the vicinity of where you're looking to go.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文