public ActionResult Index([Bind(Include = "Name, LowPrice, HighPrice,List, Only")] FormAuctionViewModel auctionViewModel, int?page) { log.Info("Action /Index/Auction has been fired"); //List<Auction> listOfAuction = db.Auction.ToList(); //List<Auction> listToRemove = new List<Auction>(); var auctions = db.Auction.OrderByDescending(a => a.TimeOpening).ToList(); foreach (var auction in auctions.ToList()) { Auction auctionFrom = (Auction)auction; if ((DateTime.Compare(Convert.ToDateTime(auction.TimeClosing), DateTime.Now) < 0) && auction.State == "OPENED") { auctionFrom.State = "COMPLETED"; db.Entry(auctionFrom).State = EntityState.Modified; db.SaveChanges(); } } if (ModelState.IsValid) { auctions = db.Auction.OrderByDescending(a => a.TimeOpening).ToList(); if (!String.IsNullOrEmpty(auctionViewModel.Name)) { auctions = auctions.Where(w => w.Name.Contains(auctionViewModel.Name)).ToList(); } if (auctionViewModel.LowPrice != null) { auctions = auctions.Where(w => w.CurrentPrice > auctionViewModel.LowPrice).ToList(); } if (auctionViewModel.HighPrice != null) { auctions = auctions.Where(w => w.CurrentPrice < auctionViewModel.HighPrice).ToList(); } if (!String.IsNullOrEmpty(auctionViewModel.List)) { auctions = auctions.Where(w => w.State.Equals(auctionViewModel.List)).ToList(); } if (auctionViewModel.Only == true) { string id = User.Identity.GetUserId(); auctions = auctions.Where(w => w.IdOwner.Equals(id)).ToList(); } } int pageSize = (int)db.InformationsForAdministrator.First().ItemsPerPage; int pageNumber = (page ?? 1); auctionViewModel.Auctions = auctions.ToPagedList(pageNumber, pageSize); return(View(auctionViewModel)); }
public ActionResult Index() { var auctions = db.Auction.OrderByDescending(a => a.TimeOpening).ToList(); FormAuctionViewModel viewModel = new FormAuctionViewModel(); int pageNumber = 1; int pageSize = (int)db.InformationsForAdministrator.First().ItemsPerPage; viewModel.Auctions = auctions.ToPagedList(pageNumber, pageSize); return(RedirectToAction("Index", "Auctions", viewModel)); }