Ejemplo n.º 1
0
        public IActionResult Index(string searchString, int page = 1, CategoriesSortState sortOrder = CategoriesSortState.IdAsc)
        {
            ViewData["IdSort"]   = sortOrder == CategoriesSortState.IdAsc ? CategoriesSortState.IdDesc : CategoriesSortState.IdAsc;
            ViewData["NameSort"] = sortOrder == CategoriesSortState.NameAsc ? CategoriesSortState.NameDesc : CategoriesSortState.NameAsc;

            var categories = _categoryRepository.GetAll();

            if (!string.IsNullOrEmpty(searchString))
            {
                categories = categories.Where(n => n.Name.ToLower().Contains(searchString.ToLower())).ToList();
            }

            List <Category> sortCategories = (sortOrder switch
            {
                CategoriesSortState.IdDesc => categories.OrderByDescending(n => n.Id),
                CategoriesSortState.NameAsc => categories.OrderBy(n => n.Name),
                CategoriesSortState.NameDesc => categories.OrderByDescending(n => n.Name),
                _ => categories.OrderBy(n => n.Id),
            }).ToList();
Ejemplo n.º 2
0
 public CategoriesSortViewModel(CategoriesSortState sortOrder)
 {
     IdSort   = sortOrder == CategoriesSortState.IdAsc ? CategoriesSortState.IdDesc : CategoriesSortState.IdAsc;
     NameSort = sortOrder == CategoriesSortState.NameAsc ? CategoriesSortState.NameDesc : CategoriesSortState.NameAsc;
     Current  = sortOrder;
 }