dropdownlistfor выбранное значение с viewdata
Я не могу привязать выбранное значение в MVC. Может кто-нибудь сказать мне, что не так со следующим кодом:
@Html.DropDownListFor(x => Model.Members[i].OccupationCd,
(IEnumerable<SelectListItem>)ViewData["ddl_occupation"],
new { @style = "width:100px", @class = "Occupation required" })
public List<SelectListItem> GetOccupation(string selectedValue)
{
List<SelectListItem> selLstOccupation = new List<SelectListItem>();
selLstOccupation.Add(new SelectListItem { Value = "", Text = "---" + ("Select Occupation") + "---" });
selLstOccupation.AddRange(GetData.AllOccupation());
selLstOccupation = GetData.GetSelectedList(selLstOccupation, selectedValue);
return selLstOccupation;
}
public class Member()
{
//code
//code
public int educationCd { get; set; }
}
Я нашел решение:
@Html.DropDownListFor(x => Model.Members[i].OccupationCd,new SelectList((IEnumerable<SelectListItem>)ViewData["ddl_occupation"],"Value","Text",Model.Members[i].OccupationCd))
1 ответ:
Вы должны сделать две вещи, чтобы решить вашу проблему. Первый-изменить метод GetOccupation с помощью следующей реализации
public List<Occupation> GetOccupation() { return GetData.AllOccupation(); }
Затем вы должны изменить инициализацию выпадающего списка на следующую
@Html.DropDownListFor(x => x.Members[i].OccupationCd, new SelectList( (IEnumerable<Occupation>)ViewData["ddl_occupation"], "OccupationCd", "@@HERE YOU ADD THE PROPERTY YOU WANT TO VISUALIZE@@", Model.Members[i].OccupationCd), "---Select Occupation--", new { @style = "width:100px", @class = "Occupation required" })
Это должно решить вашу проблему.