예제 #1
0
        public ShowAllProductsViewModel Sort(string sortOrder, ShowAllProductsViewModel model)
        {
            model.SortByNameParam  = string.IsNullOrEmpty(sortOrder) ? "name_desc" : "";
            model.SortByPriceParam = sortOrder == "Price" ? "price_desc" : "Price";

            switch (sortOrder)
            {
            case "name_desc":
                model.ProductsList = model.ProductsList.OrderByDescending(x => x.Name).ToList();
                break;

            case "Price":
                model.ProductsList = model.ProductsList.OrderBy(x => x.Price).ToList();
                break;

            case "price_desc":
                model.ProductsList = model.ProductsList.OrderByDescending(x => x.Price).ToList();
                break;

            default:
                model.ProductsList = model.ProductsList.OrderBy(x => x.Name).ToList();
                break;
            }
            return(model);
        }
예제 #2
0
        public ActionResult SearchResult(string sortOrder, string searchProduct)
        {
            var viewmodel = new ShowAllProductsViewModel();

            viewmodel.Search = searchProduct;

            using (var db = new BeerModel())
            {
                viewmodel.ProductsList.AddRange(db.Products.Where(x => x.Description.ToUpper().Contains(searchProduct.ToUpper()) || x.Name.ToUpper().Contains(searchProduct.ToUpper())));
                viewmodel = Sort(sortOrder, viewmodel);

                return(View(viewmodel));
            }
        }