Asp.net MVC如何使用数字填充下拉列表

use*_*232 19 c# model-view-controller asp.net-mvc html.dropdownlistfor

我已经看到类似的例子,人们需要填充一个对象列表,但我想要实现的是在我的DropdownlistFor中有数字1-10.有一种简单的方法可以做到这一点.以下是我所拥有的.

<div class="form-group">
    @Html.LabelFor(model => model.NumberOfTickets, new { @class = "control-label col-md-2" })
    <div class="col-md-10">
        @Html.DropDownListFor(model => model.NumberOfTickets)
        @Html.ValidationMessageFor(model => model.NumberOfTickets)
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

Chr*_*att 53

您可以使用以下内容:

@Html.DropDownListFor(m => m.NumberOfTickets, Enumerable.Range(1, 10).Select(i => new SelectListItem { Text = i.ToString(), Value = i.ToString() }))
Run Code Online (Sandbox Code Playgroud)

这一切都为创建整数1至10之间的枚举,然后使用LINQ一点的把它改造成一个IEnumerable<SelectListItem>Html.DropDownListFor可以接受的.