Beispiel #1
0
        public ActionResult EditIngredient(FormCollection fc)
        {
            if (Int32.TryParse(fc["item.Id"], out int id))
            {
                IngredientMeal ingredientMeal = db.IngredientsMeals.Find(id);
                if (ingredientMeal == null)
                {
                    return(HttpNotFound());
                }

                if (float.TryParse(fc["item.Quantity"], out float quantity) && int.TryParse(fc["item.Ingredient"], out int ingredientId))
                {
                    Ingredient ingredient = db.Ingredients.Find(ingredientId);
                    if (ingredient == null)
                    {
                        return(HttpNotFound());
                    }

                    ingredientMeal.Quantity   = quantity;
                    ingredientMeal.Ingredient = ingredient;
                    db.SaveChanges();

                    db.Entry(ingredientMeal).Reference(m => m.Meal).Load();
                    return(RedirectToAction("Edit", ingredientMeal.Meal));
                }

                db.Entry(ingredientMeal).Reference(m => m.Meal).Load();
                return(RedirectToAction("Edit", ingredientMeal.Meal));
            }

            return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
        }
Beispiel #2
0
        public ActionResult DeleteIngredient(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            IngredientMeal ingredientMeal = db.IngredientsMeals.Find(id);

            if (ingredientMeal == null)
            {
                return(HttpNotFound());
            }


            db.Entry(ingredientMeal).Reference(m => m.Meal).Load();
            Meal meal = ingredientMeal.Meal;

            db.IngredientsMeals.Remove(ingredientMeal);
            db.SaveChanges();

            return(RedirectToAction("Edit", meal));
        }