16

Я видел похожие примеры, где люди должны заполнять список объектов, но все, что я хотел бы достичь, - это иметь числа 1-10 в моем DropdownlistFor на мой взгляд , Есть простой способ сделать это. Вот что я имею.Asp.net MVC как заполнить выпадающий список с номерами

<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> 
+0

Можете ли вы разместить свою модель? –

+0

Это близко к тому, что вы просили. http://stackoverflow.com/questions/10709588/mvc3-dropdownlistfor – ANG

ответ

42

Вы можете использовать что-то вроде следующего:

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

Все это делает создание перечислимых целых чисел от 1 до 10, а затем использует немного LINQ, чтобы превратить его в IEnumerable<SelectListItem>, что Html.DropDownListFor может принять.

3

Летний список от текущего года до n лет назад.

int startYear = 1980 
@Html.DropDownListFor(m => m.DateofEstablishment, Enumerable.Range(0, (DateTime.Now.Year - startYear -1)).Select(i => new SelectListItem { Text = (DateTime.Now.Year - i).ToString(), Value = i.ToString() }), "Please select year", new { @class = "form-control", @required = "required" }) 
Смежные вопросы