Итак, у меня есть список, чтобы отображать несколько лет (с 2014 года по два года после текущего), и он отлично работает, но сейчас мне нужно установить параметр currentYear в качестве значения по умолчанию в раскрывающемся списке. Я пытаюсь с выбранным имуществом, но не повезло, может быть, я не реализую его правильно. Заранее спасибо.Как установить значение по умолчанию в раскрывающемся списке MVC .NET?
В моей ViewModel я это:
public int SelectedYear { get; set; }
Вид:
List<SelectListItem> selectedYear = new List<SelectListItem>();
int currentYear = int.Parse(DateTime.Now.Year.ToString());
var minYear = 2014;
var maxYear = currentYear + 2;
for (var i = minYear; i <= maxYear; i++)
{
if (currentYear == i)
{
var year = new SelectListItem()
{
Text = i.ToString(),
Value = i.ToString(),
Selected = true
};
selectedYear.Add(year);
}
else
{
var year = new SelectListItem()
{
Text = i.ToString(),
Value = i.ToString(),
Selected = false
};
selectedYear.Add(year);
}
}
@Html.DropDownListFor(m => m.SelectedYear, selectedYear, new { @class = "inlined form-control", @style = "width:100%" })
@Html.ValidationMessageFor(m => m.SelectedYear, "", new { @class = "text-danger" })
Вам нужно установить значение 'SelectedYear' для соответствия одному из параметров перед тем, как передать модель в представление. И ваш код может просто быть «IEnumerable selectedYear = new SelectList (Enumerable.Range (2014, 3));' –