Как получить выпадающий список для отображения значения из базы данных, а не из списка выбора?
Я использую asp.net mvc с code first entity framework. Выпадающий список сохраняет выбранное значение в базе данных, но когда я возвращаюсь на страницу, он просто показывает значения списка выбора из модели.
Что я уже пробовал:
Модель
------------
public class myRating { public int fRatingId { get; set; } public string Desc { get; set; } public IEnumerable<SelectListItem> listRatings { get; set; } }
Контроллер
----------------
public List<SelectListItem> GetRatingList() { var ratingList = db.fRatings.ToList() .Select(d => new SelectListItem { Value = d.fRatingId.ToString(), Text = d.Desc }); return ratingList.ToList(); }
model.listRatings = GetRatingList();
Смотреть
--------------
@foreach (var item in Model.myDpExercises) <tr> <td> @Html.DisplayFor(modelitem => item.Exercise) </td> <td> @Html.DropDownListFor(modelItem => item.RatingId,Model.listRatings, "--Please Select--", new { id = "ddlRating", onchange = "UpdateRating(this)", data_mydpexid = item.Id }) </td> </tr>
Richard Deeming
Проблема в том, что опция "--Please Select--" всегда выбрана? Это было бы потому, что вы не установили Selected
недвижимость на любом из SelectListItem
предметы.
Но из вашего кода не ясно, как вы узнаете, какой элемент выбрать.