// GET: Foods/Create public ActionResult Create() { var restaurants = db.Restaurants.ToList(); var viewModel = new FoodFormViewModel { Restaurants = restaurants }; return(View(viewModel)); }
//id is not needed since this should only be used by the method if they are making a new food private Food ConvertFoodFormViewModelToFood(FoodFormViewModel foodVM) { Food food = new Food { Name = foodVM.Name, Description = foodVM.Description, BasePrice = foodVM.BasePrice, Extras = foodVM.Extras }; return(food); }
//can only save the Food not extras! public async Task <ActionResult> Save(FoodFormViewModel foodVM) { Food foodInDb = await _unitOfWork.Foods.GetWithExtra(foodVM.Id); if (foodInDb == null) { _unitOfWork.Foods.Add(ConvertFoodFormViewModelToFood(foodVM)); } else { foodInDb.Name = foodVM.Name; foodInDb.Description = foodVM.Description; foodInDb.BasePrice = foodVM.BasePrice; } await _unitOfWork.Complete(); return(RedirectToAction("Index")); }
// GET: Foods/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var food = db.Foods.Find(id); if (food == null) { return(HttpNotFound()); } var viewModel = new FoodFormViewModel { Restaurants = db.Restaurants.ToList(), Food = food }; return(View(viewModel)); }