DropDownListFor, не выбирающий значение

Я использую вспомогательный метод DropDownListFor в странице редактирования, и у меня нет удачи, заставляя его выбрать значение, которое я указываю. Я заметил подобный вопрос на Stackoverflow. Предложенное обходное решение было к, "заполните свой SelectList в коде представления". Проблема состоит в том, что я уже попробовал это, и это все еще не работает.

<%= Html.DropDownListFor(model => model.States, new SelectList(Model.States.OrderBy(s => s.StateAbbr), "StateAbbr", "StateName", Model.AddressStateAbbr), "-- Select State --")%>

Я установил точку останова и проверил существование (и законность) модели. AddressStateAbbr. Я просто не уверен, что я пропускаю.

76
задан Community 23 May 2017 в 12:18
поделиться

1 ответ

Попробуйте:

<%= Html.DropDownListFor(
    model => model.AddressStateAbbr,
    new SelectList(
        Model.States.OrderBy(s => s.StateAbbr),
        "StateAbbr",
        "StateName",
        Model.AddressStateAbbr), "-- Select State --")%>

или в синтаксисе Razor:

@Html.DropDownListFor(
    model => model.AddressStateAbbr,
    new SelectList(
        Model.States.OrderBy(s => s.StateAbbr),
        "StateAbbr",
        "StateName",
        Model.AddressStateAbbr), "-- Select State --")

Помощники на основе выражений, похоже, не соблюдают свойство Selected элементов SelectListItems в вашем списке SelectList .

30
ответ дан 24 November 2019 в 11:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: