public ActionResult Index() { List<DesktopViewModel> desktopList = new List<DesktopViewModel>(); var desks = db.Desktops.ToList(); foreach (Desktop desk in desks) { DesktopViewModel deskView = new DesktopViewModel(); ApplicationUser _user = desk.ApplicationUser; deskView._desktop = desk; deskView._username = _user.FirstName + " " + _user.LastName; deskView._lastcheckout = desk.Checkouts .OrderBy(x => x.dtCheckedOut) .LastOrDefault() == null ? null : desk.Checkouts.OrderBy(x => x.dtCheckedOut) .Select(x => new CheckoutViewModel { dtCheckedOut = x.dtCheckedOut, dtReturned = x.dtReturned, Username = x.ApplicationUser.FirstName + " " + x.ApplicationUser.LastName }).LastOrDefault(); deskView._sold = desk.Sale ?? null; desktopList.Add(deskView); } return View(desktopList.AsEnumerable()); }
public ActionResult Details(int? id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } Desktop desktop = db.Desktops.Find(id); if (desktop == null) { return HttpNotFound(); } DesktopViewModel details = new DesktopViewModel(); details._desktop = desktop; details._lastcheckout = desktop.Checkouts.Any() ? desktop.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 = desktop.Sale == null ? null : desktop.Sale; return View(details); }