Я занимаюсь разработкой веб-приложения ASP.Net MVC 3.В настоящее время приложение подключено к базе данных, в которой есть несколько таблиц, две из которых - это категория (catId, Name) и Site (siteID, Name).
Я хочу создать представление с двумя выпадающими списками,один для каждой из упомянутых таблиц, так что пользователь может выбрать из, а затем запустить отчет.Для этого я создал viewModel для представления двух выпадающих списков
public class ReportSiteCategorySearchViewModel
{
public SelectList categoryList { get; set; }
public SelectList siteList { get; set; }
}
Затем в моем контроллере, который возвращает viewModel, у меня есть следующее
public ActionResult getEquipmentByCategoryAndSite()
{
ReportSiteCategorySearchViewModel viewModel = new ReportSiteCategorySearchViewModel
{
categoryList = new SelectList(categoryService.GetAllCategories().ToList(), "categoryID", "categoryTitle"),
siteList = new SelectList(siteService.GetAllSites().ToList(), "siteID", "title")
};
return View(viewModel);
}
Затем я передаюпредставление, которое принимает эту модель представления и записывает значения в раскрывающиеся списки
<div>
<label for="ddlSite">Sites</label>
@Html.DropDownList("ddlSite", Model.siteList, "All Sites")
<label for="ddlCatgeory">Categories</label>
@Html.DropDownList("ddlCatgeory", Model.categoryList, "All Categories")
</div>
Это работает, однако я не уверен, что это лучший способ сделать это.Мне просто интересно, мой метод правильный, есть ли лучший способ сделать это?То есть, что если мне понадобится еще 5/6 выпадающих списков из других таблиц, я должен просто добавить в текущую модель представления и т. Д.
Любая обратная связь будет принята с благодарностью.1016 *