Мне нужно взять данные из моей базы данных и показать их в раскрывающемся списке на моей веб-странице: возвращенные данные будут иметь два параметра: DisciplineID и DisciplaneName.
Все работает правильно до контроллера. Он возвращает правильные данные, но нуждается в помощи о том, как правильно переместить данные в представление.
Вот разбивка моего проекта с использованием MVC5:
Класс модели:
public class Discipline
{
public int DisciplineID { get; set; }
public string DisciplineName { get; set; }
}
Реализация класса модели:
public class DisciplineModel : IDiscipline
{
private List<Discipline> disciplinesList = new List<Discipline>();
public IEnumerable<Discipline> disciplines()
{
LoadDisciplines(); //populates disciplinesList from database
return disciplinesList;
}
}
Контроллер:
[HttpGet]
public ActionResult EditDiscipline()
{
var disciplinesList = _idiscipline.disciplines();
return View(disciplinesList);
}
Данные переносятся сюда, но необходимо переместить эти данные в представление.
Просмотр:
@model OnlineTestingSystem.Models.Discipline
<div class="container">
@using (Html.BeginForm("EditDiscipline", "Discipline", FormMethod.Post))
{
<div class="form-group">
@Html.LabelFor(a => a.DisciplineName, "Discipline Name")
@Html.DropDownListFor(a => a.DisciplineID, Model.disciplines,"Selected")
</div>
<input class="btn btn-primary" type="submit" />
}
@ViewBag.message
</div>
Мне нужно добавить данные, возвращенные из выпадающего списка, чтобы показать идентификаторы DisciplineID. Итак, как мне изменить мои разные классы для достижения этой цели?
Синтаксис строки ниже неправильный, я просто хотел показать, что это то, что я пытаюсь сделать.
@Html.DropDownListFor(a => a.DisciplineID, Model.disciplines,"Selected")
Заранее спасибо.