public ActionResult EditOrder(int?orderId) { var rep = new OrdersRepository(); var viewOrder = new Models.CreatingOrderViewModel { IsNew = true, OrderDate = DateTime.Now, ShippedDate = DateTime.Now, RequiredDate = DateTime.Now }; var customers = rep.GetAllCustomers(); var employees = rep.GetAllEmployees(); if (!orderId.HasValue) { ViewBag.Customers = customers; ViewBag.Employees = employees; return(PartialView("_EditOrder", viewOrder)); } var order = rep.GetAllOrders(false) .Where(x => x.OrderID == orderId.Value) .FirstOrDefault(); if (order == null) { return(RedirectToAction("ErrorMessage", "Home", new { message = Resources.EmptyOrderId })); } ViewBag.Customers = customers .Where(x => x.CustomerID == order.CustomerID) .Concat(customers.Where(x => x.CustomerID != order.CustomerID)); ViewBag.Employees = employees .Where(x => x.EmployeeID == order.EmployeeID) .Concat(employees.Where(x => x.EmployeeID != order.EmployeeID)); Mapper.Initialize(cfg => cfg.CreateMap <DataAccessLayer.Models.Order, Models.CreatingOrderViewModel>()); viewOrder = Mapper.Map <DataAccessLayer.Models.Order, Models.CreatingOrderViewModel>(order); viewOrder.IsNew = false; return(PartialView("_EditOrder", viewOrder)); }