Я только начинаю с MVC, и я бы хотел отобразить два списка DropDownLists на моей индексной странице - индексное представление и заполнить первый раскрывающийся список с уникальным именем состояния из базы данных и на основе выбора из первый раскрывающийся список, введите второе раскрывающееся меню с данными из имен из таблицы базы данных, где состояние равно состоянию, выбранному в первом раскрывающемся списке.Начало работы, настройка индексной страницы
У меня уже есть класс модели создан и ниже мой контроллер:
public ActionResult Index()
{
MyRecordContext rc = new MyRecordContext();
List<MyRecord> rl = rc.MyRecords.ToList();
return View(rl);
}
На мой взгляд index.shtml я следующее, чтобы отобразить первый DropDownList:
@if (Model != null)
{
<select id="ddlState">
@foreach (var item in Model)
{
<option>
@item.State
</option>
}
</select>
}
Теперь, как я могу гарантировать, что из базы данных выбрано только отдельное состояние, и как мне заняться созданием и заполнением второго раскрывающегося списка на основе выбора в первом? Может ли кто-нибудь указать мне в правильном направлении? Спасибо
Update:
Для того, чтобы отобразить различные состояния в раскрывающемся списке, я изменил мой контроллер следующим образом:
public ActionResult Index()
{
MyRecordContext rc = new MyRecordContext();
List<String> sl = rc.MyRecords.Select(s => s.State).Distinct().ToList();
return View(sl);
}
Для вашего второго вопроса: см HTTP://stackoverflow.com/questions/705540/asp-net-mvc-cascading-drop-down?rq=1. Для вашего первого вопроса: это будет действительно зависеть от того, как выглядит ваш dbContext и 'MyRecords' и как вы держите свои Штаты. – Jasen