public ActionResult Index() { List<PrinterViewModel> printerList = new List<PrinterViewModel>(); var prints = db.Printers.ToList(); foreach(Printer print in prints) { PrinterViewModel printView = new PrinterViewModel(); ApplicationUser _user = print.ApplicationUser; printView._printer = print; printView._username = _user.FirstName + " " + _user.LastName; printView._lastcheckout = print.Checkouts .OrderBy(x => x.dtCheckedOut) .LastOrDefault() == null ? null : print.Checkouts.OrderBy(x => x.dtCheckedOut) .Select(x => new CheckoutViewModel { dtCheckedOut = x.dtCheckedOut, dtReturned = x.dtReturned, Username = x.ApplicationUser.FirstName + " " + x.ApplicationUser.LastName }).LastOrDefault(); printView._sold = print.Sale ?? null; printerList.Add(printView); } return View(printerList.AsEnumerable()); }
public ActionResult Details(int? id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } Printer printer = db.Printers.Find(id); if (printer == null) { return HttpNotFound(); } PrinterViewModel details = new PrinterViewModel(); details._printer = printer; details._lastcheckout = printer.Checkouts.Any() ? printer.Checkouts.OrderByDescending(x => x.dtCheckedOut).Select(x => new CheckoutViewModel { dtCheckedOut = x.dtCheckedOut, dtReturned = x.dtReturned, Username = x.ApplicationUser.FirstName + " " + x.ApplicationUser.LastName }).First() : null; details._sold = printer.Sale == null ? null : printer.Sale; return View(details); }