Создал на странице сортировку, сделал это таким образом
контроллер
List<SelectListItem> items = new List<SelectListItem>();
items.Add(new SelectListItem { Text = "увелечению цены", Value = ViewBag.PriceSort = "price_asc" });
items.Add(new SelectListItem { Text = "уменьшению цены", Value = ViewBag.PriceSort = "price_desc" });
items.Add(new SelectListItem { Text = "названию", Value = ViewBag.NameSort = "id_name" });
ViewBag.SelectedItem = "id_name";
ViewBag.SearchStatusList = items;
switch (sortOrder)
{
case "id_name":
equip = equip.OrderBy(s => s.Name.Tool);
break;
case "price_desc":
equip = equip.OrderByDescending(s => s.Price);
break;
case "price_asc":
equip = equip.OrderBy(s => s.Price);
break;
default:
equip = equip.OrderBy(s => s.ToolID);
break;
}
представление
@using (Html.BeginForm("Index", "Main", FormMethod.Get))
{
<span>Сортировать по:</span> @Html.DropDownList("sortOrder", new SelectList(ViewBag.SearchStatusList, "Value", "Text",ViewBag.SelectedItem) ,new { onchange = "form.submit();", style = "border-radius: 5px;"})
}
Сортирует отлично, но есть проблема. Проблема в том, что при переходе на другое представление вылетает ошибка
Значение не может быть неопределенным. Имя параметра: items Ошибка источника вот эта строка
span>Сортировать по:</span> @Html.DropDownList("sortOrder", new SelectList(ViewBag.SearchStatusList, "Value", "Text",ViewBag.SelectedItem) ,new { onchange = "form.submit();", style = "border-radius: 5px;"})
Из-за чего возникает эта проблема?
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости