public DishViewEditModel GetEditById(int id) { var dish = dishRepo.GetById(id); var model = new DishViewEditModel { Name = dish.Name, Ingredients = dish.Ingredients.Select(x => x.Id).ToList(), Tags = dish.Tags.Select(x => x.Id).ToList() }; return(model); }
public ActionResult Edit(int id, DishViewEditModel model) { if (!ModelState.IsValid) { return(View(model)); } if (DishService.Update(model)) { TempData["SaveResult"] = "Your dish was updated."; return(RedirectToAction("Index")); } ; ModelState.AddModelError("", "Dish could not be updated."); return(View(model)); }
//Update public bool Update(DishViewEditModel model) { var dish = dishRepo.GetById(model.Id); var ingredients = new List <Ingredient>(); model.Ingredients.ForEach(x => { ingredients.Add(ingredientRepo.GetById(x)); }); var tags = new List <Tag>(); model.Tags.ForEach(x => { tags.Add(tagRepo.GetById(x)); }); dish.Name = model.Name; dish.Ingredients = (ICollection <Ingredient>)ingredients; dish.Tags = (ICollection <Tag>)tags; return(dishRepo.Update(dish)); }