//public ActionResult Search2(string sortOrder) //{ // var prod = from p in db.Products // select p; //} public void SortProducts(string sortOrder, ViewModels.ProductIndexViewModel model) { ViewBag.SortName = String.IsNullOrEmpty(sortOrder) ? "name_desc" : ""; ViewBag.SortPrice = sortOrder == "Price" ? "price_desc" : "price"; var prods = from p in db.Products select p; switch (sortOrder) { case "name_desc": model.ProductList = model.ProductList.OrderByDescending(s => s.Name).ToList(); break; case "Price": model.ProductList = model.ProductList.OrderBy(s => s.Price).ToList(); break; case "price_desc": model.ProductList = model.ProductList.OrderByDescending(s => s.Price).ToList(); break; default: model.ProductList = model.ProductList.OrderBy(s => s.Name).ToList(); break; } }
public ActionResult Category(int id, string sort) { var model = new ViewModels.ProductIndexViewModel(); var db = new Models.DBModel(); model.Products.AddRange(db.Products.Where(p => p.categoryId == id).Select(r => new ViewModels.ProductIndexViewModel.ProductListViewModel { id = r.id, name = r.name, description = r.description, price = r.price })); if (sort == "NameAsc") { model.Products = model.Products.OrderBy(r => r.name).ToList(); } else if (sort == "NameDesc") { model.Products = model.Products.OrderByDescending(r => r.name).ToList(); } if (sort == "PriceAsc") { model.Products = model.Products.OrderBy(r => r.price).ToList(); } else if (sort == "PriceDesc") { model.Products = model.Products.OrderByDescending(r => r.price).ToList(); } model.CurrentSort = sort ?? "NameAsc"; return(View(model)); }
// GET: Product public ActionResult Index(string sort, int Id) { var model = new ViewModels.ProductIndexViewModel(); using (var db = new EcommerceModel()) { model.ProductList.AddRange(db.Products.Select(p => new ViewModels.ProductIndexViewModel.ProductListViewModel { ProductId = p.ProductId, Name = p.Name, Description = p.Description, Price = p.Price, CategoryId = p.CategoryId }).Where(p => p.CategoryId == Id)); } if (sort == "NamnAsc") { model.ProductList = model.ProductList.OrderBy(r => r.Name).ToList(); } else if (sort == "NamnDesc") { model.ProductList = model.ProductList.OrderByDescending(r => r.Name).ToList(); } model.CurrentSort = sort; return(View(model)); }
public ProductIndexViewModel SortProducts(string sortOrder, ViewModels.ProductIndexViewModel model) { if (string.IsNullOrEmpty(sortOrder)) { sortOrder = "nameAsc"; } model.SortName = sortOrder == "nameDesc" ? "nameAsc" : "nameDesc"; model.SortPrice = sortOrder == "priceDesc" ? "priceAsc" : "priceDesc"; switch (sortOrder) { case "nameAsc": model.ProductList = model.ProductList.OrderBy(x => x.Name).ToList(); break; case "nameDesc": model.ProductList = model.ProductList.OrderByDescending(x => x.Name).ToList(); break; case "priceAsc": model.ProductList = model.ProductList.OrderBy(p => p.Price).ToList(); break; case "priceDesc": model.ProductList = model.ProductList.OrderByDescending(p => p.Price).ToList(); break; } return(model); }
// GET: /<controller>/ public IActionResult Index() { var viewModel = new ViewModels.ProductIndexViewModel(); ProductRepository repo = new ProductRepository(); viewModel.Products = repo.GetAllProducts(); return(View(viewModel)); }
public ActionResult Index(int?page) { if (page == null) { page = 1; } var model = new ViewModels.ProductIndexViewModel(); model.PageNum = (int)page; model.Name = "Home Page"; return(View(model)); }
public ActionResult ProductIndex(string sort) { var model = new ViewModels.ProductIndexViewModel(); using (var db = new Models.FazerDB()) { model.Products.AddRange(db.Products.Select(p => new ViewModels.ProductIndexViewModel.ProductListViewModel { Name = p.Name, ProductId = p.ProductId, Description = p.Description, CategoryId = p.CategoryId, Price = p.Price })); } SortProducts(sort, model); return(View(model)); }
public ActionResult Search(string SearchProduct) { using (var db = new Models.CategoryDb()) { var model = new ViewModels.ProductIndexViewModel { SearchProduct = SearchProduct }; model.Products.AddRange(db.Products.ToList().Select(r => new ViewModels.ProductIndexViewModel.ProductListViewModel { ProductId = r.ProductId, Name = r.Name, Price = r.Price, Description = r.Description, }).ToList().Where(c => c.Name.ToLower().Contains(model.SearchProduct.ToLower()) || c.Description.ToLower().Contains(model.SearchProduct.ToLower()) )); return(View("Search", model)); } }
public ActionResult CategoryView(int id, string sort) { var model = new ViewModels.ProductIndexViewModel(); using (var db = new Models.CategoryDb()) { model.Products.AddRange(db.Products.Select(p => new ViewModels.ProductIndexViewModel.ProductListViewModel { Name = p.Name, ProductId = p.ProductId, Description = p.Description, CategoryId = p.Category.CategoryId, Price = p.Price }).Where(p => p.CategoryId == id)); if (sort == "NamnAsc") { model.Products = model.Products.OrderBy(r => r.Name).ToList(); } else if (sort == "NamnDesc") { model.Products = model.Products.OrderByDescending(r => r.Name).ToList(); } if (sort == "PriceAsc") { model.Products = model.Products.OrderBy(r => r.Price).ToList(); } else if (sort == "PriceDesc") { model.Products = model.Products.OrderByDescending(r => r.Price).ToList(); } model.CurrentSort = sort; return(View(model)); } }
public ActionResult SearchProduct(string searchProduct, string sort) { using (var db = new Models.FazerDB()) { var model = new ViewModels.ProductIndexViewModel { SearchProduct = searchProduct }; model.Products.AddRange(db.Products.Select(p => new ViewModels.ProductIndexViewModel.ProductListViewModel { Name = p.Name, Description = p.Description, Price = p.Price, CategoryId = p.CategoryId, ProductId = p.ProductId }).ToList().Where(c => c.Name.ToLower().Contains(model.SearchProduct.ToLower()) || c.Description.ToLower().Contains(model.SearchProduct.ToLower()) )); SortProducts(sort, model); return(View("SearchProduct", model)); } }
public void SortProducts(string sort, ViewModels.ProductIndexViewModel model) { model.SortName = String.IsNullOrEmpty(sort) ? "namedes" : ""; model.SortPrice = sort == "price" ? "pricedes" : "price"; switch (sort) { case "namedes": model.Products = model.Products.OrderByDescending(s => s.Name).ToList(); break; case "price": model.Products = model.Products.OrderBy(s => s.Price).ToList(); break; case "pricedes": model.Products = model.Products.OrderByDescending(s => s.Price).ToList(); break; default: model.Products = model.Products.OrderBy(s => s.Name).ToList(); break; } }
public ActionResult CurrentSort(string sort) { var model = new ViewModels.ProductIndexViewModel(); using (var db = new Models.CategoryDb()) { model.Products.AddRange(db.Products.Select(r => new ViewModels.ProductIndexViewModel.ProductListViewModel { ProductId = r.ProductId, Name = r.Name })); if (sort == "NamnAsc") { model.Products = model.Products.OrderBy(r => r.Name).ToList(); } else if (sort == "NamnDesc") { model.Products = model.Products.OrderByDescending(r => r.Name).ToList(); } if (sort == "PriceAsc") { model.Products = model.Products.OrderBy(r => r.Price).ToList(); } else if (sort == "PriceDesc") { model.Products = model.Products.OrderByDescending(r => r.Price).ToList(); } model.CurrentSort = sort; return(View(model)); } }
public ActionResult Search(string query, string sort) { var model = new ViewModels.ProductIndexViewModel(); var db = new Models.DBModel(); model.Products.AddRange(db.Products.Where(p => p.name.Contains(query) || p.description.Contains(query)).Select(r => new ViewModels.ProductIndexViewModel.ProductListViewModel { id = r.id, name = r.name, description = r.description, price = r.price })); model.CurrentQuery = query; if (sort == "NameAsc") { model.Products = model.Products.OrderBy(r => r.name).ToList(); } else if (sort == "NameDesc") { model.Products = model.Products.OrderByDescending(r => r.name).ToList(); } if (sort == "PriceAsc") { model.Products = model.Products.OrderBy(r => r.price).ToList(); } else if (sort == "PriceDesc") { model.Products = model.Products.OrderByDescending(r => r.price).ToList(); } model.CurrentSort = sort ?? "NameAsc"; return(View(model)); }