ASP.NET ошибка связанная со списком

507
29 марта 2017, 14:28

Создал на странице сортировку, сделал это таким образом

   контроллер
    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;"})

Из-за чего возникает эта проблема?

READ ALSO
Системный разделитель

Системный разделитель

Проблема с dataGridView, когда по умолчанию в системе стоит разделитель "," матюкается БД что не может привести varchar к numeric меняешь разделитель на "" все...

295
POST-Запрос и его ответ

POST-Запрос и его ответ

Вступление: У РЖД есть такая программа лояльности - РЖД БонусСуть её в том, что за успешные поездки пассажирам полагается некий бонус

276
Сравнение данных 2-х массивов C#

Сравнение данных 2-х массивов C#

Дано два массива :

297