Данные :
var countries = new Dictionary<string,string>();
countries.Add("AF","Afghanistan");
countries.Add("US","United States");
countries.Add("FR","France");
Razor :
@Html.DropdownList("Countries",new SelectList(countries, "key", "value", "US"), "Select Country")
Проблема : в моей бритве я указываю " США "
для selectedValue и «Select Country»
для optionLabel. Я ожидаю, что это вставит «Select Country»
как первый элемент в раскрывающемся списке, И будет «US «
уже выбран для меня.
Что происходит на самом деле : « Выбрать страну »
вставлено, но « США »
НЕ выбрано. » Выберите страну »
is.
Вопрос : можно ли получить и то, и другое? Где Razor вводит « Пожалуйста, выберите »
, но также предварительно выбирает « США »
как значение по умолчанию?
Обратите внимание на : я получаю данные из таблицы в своей базе данных, поэтому я бы предпочел, чтобы там не было фактической строки с «Пожалуйста, выберите», или мне пришлось бы вставлять ее самостоятельно в словарь. Проще сделать Model.Countries = dbRepo.GetCountries () в моем контроллере, чем объявлять пустой словарь , добавляя «Пожалуйста, выберите», затем перебирая .GetCountries () и добавляя в исходный словарь перед установкой его в Model.Countries для моего представления.
Спасибо!