Я хочу простой раскрывающийся список, содержащий значения «По возрастанию» и «По убыванию», которые затем отправляются контроллеру как sortOrder, когда кнопка поиска нажата в методе Index(). Я пробовал так много разных вещей и просто не могу заставить это работать, что я делаю неправильно.Не удается получить Dropdownlist для правильной работы
P.S Я не хочу делать эту модель, я просто хочу вернуть простой «Asc» или «Desc» из выпадающего списка в переменную sortOrder.
UserController.cs
public ViewResult Index(string searchString, string sortOrder = "Asc")
{
var sortOrderParam = new[]
{
new SelectListItem { Value = "Asc", Text = "Ascending" },
new SelectListItem { Value = "Desc", Text = "Descending" }
};
var users = from u in db.TBL_SYS_USER
select u;
if (!string.IsNullOrEmpty(searchString))
{
users = users.Where(x => x.USER_FIRST_NAME.ToUpper().Contains(searchString.ToUpper()));
}
switch (sortOrder)
{
case "Desc":
users = users.OrderByDescending(u => u.USER_FIRST_NAME);
break;
default:
users = users.OrderBy(u => u.USER_FIRST_NAME);
break;
}
PopulateFieldDropdownList("");
return View(users.ToList());
}
Index.cshtml
@using (Html.BeginForm())
{
<p>
Search Criteria: @Html.TextBox("searchString")
Order By: @Html.DropDownList("sortOrderParam")
<input type="submit" value="Search"/>
</p>
}