public List <IndexProductModel> UrunListesi() { List <IndexProductModel> lipm = new List <IndexProductModel>(); var products = db.Products.ToList(); foreach (var item in products) { IndexProductModel im = new IndexProductModel(); im.Ad = item.Ad; im.CategoryName = db.Categories.FirstOrDefault(x => x.Id == item.CategoryID).Ad; im.Fiyat = item.Fiyat; im.ResimYolu = item.ResimYolu; im.StokAdet = item.StokAdet; lipm.Add(im); } return(lipm); }
// GET: Product public async Task <IActionResult> Index( string sortOrder, string currentFilter, string searchString, int?pageNumber) { string userid = User.FindFirstValue(ClaimTypes.NameIdentifier); Klant klant = _context.Klanten.FirstOrDefault(k => k.UserId == userid); IndexProductModel viewModel = new IndexProductModel(); viewModel.CurrentSort = sortOrder; viewModel.NaamSortParm = String.IsNullOrEmpty(sortOrder) ? "name_desc" : ""; viewModel.PrijsSortParm = sortOrder == "Prijs" ? "prijs_desc" : "Prijs"; viewModel.TypeSortParm = sortOrder == "Type" ? "type_desc" : "Type"; if (searchString != null) { pageNumber = 1; } else { searchString = currentFilter; } viewModel.CurrentFilter = searchString; var producten = from p in _context.Producten select p; if (!String.IsNullOrEmpty(searchString)) { producten = producten.Where(p => p.Naam.Contains(searchString) || p.Type.Contains(searchString)); } switch (sortOrder) { case "name_desc": producten = producten.OrderByDescending(p => p.Naam); break; case "Prijs": producten = producten.OrderBy(p => p.Prijs); break; case "prijs_desc": producten = producten.OrderByDescending(p => p.Prijs); break; case "Type": producten = producten.OrderBy(p => p.Type); break; case "type_desc": producten = producten.OrderByDescending(p => p.Type); break; default: producten = producten.OrderBy(p => p.Naam); break; } int pageSize = 4; viewModel.paginaList = await PaginatedList <Product> .CreateAsync(producten.AsNoTracking(), pageNumber ?? 1, pageSize); return(View(viewModel)); }