在ASP.NET MVC中,如何将多个下拉列表中的值发布到集合中

时间:2013-12-16 21:32:41

标签: asp.net-mvc html-select

在ASP.NET MVC中,我希望有一个视图,显示集合中定义的任意数量的下拉列表。每个下拉列表都有一个与之关联的ID值。我想在控制器中的post方法中接收这些,其中集合将具有所有下拉ID值以及为每个下拉值选择的下拉值。

例如,评级将是具有任意数量值的文本/值集合。

   @rating(1).Text  @Html.DropDownList("rating(1)", ratingList, "")
   @rating(2).Text  @Html.DropDownList("rating(2)", ratingList, "")
   ...
   @rating(10).Text  @Html.DropDownList("rating(10)", ratingList, "")

评级ID号可能不是连续的。我想有一个控制器方法,它将在一个集合,如Dictionary对象中返回它。我怎么能这样做?

1 个答案:

答案 0 :(得分:4)

您可以查看Model Binding to a List

然后:

@rating[0].Text  @Html.DropDownList("rating[0]", ratingList, "")
@rating[1].Text  @Html.DropDownList("rating[1]", ratingList, "")
...
@rating[9].Text  @Html.DropDownList("rating[9]", ratingList, "")

您的控制器操作可以采用string[] rating参数,该参数将包含所选值。