如何在视图中将数组模型属性显示为列表?

时间:2012-06-16 22:38:43

标签: asp.net-mvc-3

我在我的模型中有这个数组属性,并希望在我的视图中看到它作为下拉列表。这是数组属性:

public string[] weekDays = new string[5] { "monday", "Tuesday", "Wednesday", "Thursday", "Friday" };

public string[] WeekDays
{
    get { return weekDays; }
}

我找了几个小时没有简单的解释或例子。请帮忙。

2 个答案:

答案 0 :(得分:3)

您可以使用DropDownList() html帮助程序。

Html.DropDownList("weekDays",
                  Model.WeekDays.Select(s => new SelectListItem { Text = s }))

如果您想阅读所选值,可以使用DropDownListFor()助手。

Html.DropDownListFor(model => model.SelectedWeekDay, //a property to assign the value
                              Model.WeekDays.Select(s => new SelectListItem { Text = s, Value = s }))

答案 1 :(得分:1)

以下是我如何解决它。

@{
    var wekdys = new Enrollment();
    @Html.DropDownList("weekDays", wekdys.WeekDays.Select(s => new SelectListItem { Text = s.ToString(), Value = s.ToString() }))
}

这允许我在foreach循环之外有一个DropDownList