示例#1
0
        public ActionResult Create(MealItemViewModel mtvms, HttpPostedFileBase[] Photos)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    MealItem mealitem = Mapper.Map <MealItemViewModel, MealItem>(mtvms);

                    foreach (var fileBase in Photos)
                    {
                        if (fileBase != null)
                        {
                            if (fileBase.ContentLength > 0)
                            {
                                var path = Path.Combine(Server.MapPath("~/MealPhotos"), WebSecurity.CurrentUserId + '-' + Path.GetRandomFileName().Replace(".", "").Substring(0, 8) + '-' + Path.GetFileName(fileBase.FileName));


                                fileBase.SaveAs(path);
                                MealItems_Photos mp = new MealItems_Photos();
                                mp.Photo = path;
                                mealitem.MealItems_Photos.Add(mp);
                            }
                        }
                    }


                    foreach (var mealaller in mtvms.AllergenDD)
                    {
                        if (mealaller.Selected)
                        {
                            MealItems_AllergenicFoods aller = new MealItems_AllergenicFoods();
                            aller.AllergenicFoodID = mealaller.AllergenID;
                            mealitem.MealItems_AllergenicFoods.Add(aller);
                        }
                    }



                    mealitem.MealItemId = _service.AddAndReturnID(mealitem);

                    return(RedirectToAction("Details", "MealItem", new { id = mealitem.MealItemId }));
                }
            }
            catch (Exception ex)
            {
                //Log the error (uncomment dex variable name after DataException and add a line here to write a log.)
                ModelState.AddModelError("", "Unable to save changes." + ex.Message.ToString());
            }
            mtvms = PopulateDropDown(mtvms);
            return(View(mtvms));
        }
        public JsonResult CreateMealItem(MealItemViewModel mtvms)
        {
            IMealItemService _service = new MealItemService();
            MealItem         mealitem = Mapper.Map <MealItemViewModel, MealItem>(mtvms);

            foreach (var mealaller in mtvms.AllergenDD)
            {
                if (mealaller.Selected)
                {
                    MealItems_AllergenicFoods aller = new MealItems_AllergenicFoods();
                    aller.AllergenicFoodID = mealaller.AllergenID;
                    mealitem.MealItems_AllergenicFoods.Add(aller);
                }
            }

            mealitem.MealItemId = _service.AddAndReturnID(mealitem);

            return(Json(new { success = true, id = mealitem.MealItemId }, JsonRequestBehavior.AllowGet));
        }
        public ActionResult Create(MealItemViewModel mtvms)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    //  string json = JsonConvert.SerializeObject(mtvms);

                    MealItem mealitem = Mapper.Map <MealItemViewModel, MealItem>(mtvms);

                    if (mtvms.Imagelist != null)
                    {
                        foreach (var fileBase in mtvms.Imagelist)
                        {
                            if (fileBase != null)
                            {
                                List <MealItems_Photos> lstMealItems_Photos = new List <MealItems_Photos>();
                                foreach (var photo in mealitem.MealItems_Photos)
                                {
                                    lstMealItems_Photos.Add(photo);
                                }
                                //foreach (var photo in lstMealItems_Photos)
                                //{
                                //    db.MealItems_Photos.Remove(photo);

                                //    db.Entry(mealitem).State = EntityState.Modified;
                                //    db.SaveChanges();
                                //}
                                if (fileBase.ContentLength > 0)
                                {
                                    var path = Path.Combine(Server.MapPath("~/MealPhotos"), WebSecurity.CurrentUserId + '-' + Path.GetRandomFileName().Replace(".", "").Substring(0, 8) + '-' + Path.GetFileName(fileBase.FileName));


                                    fileBase.SaveAs(path);
                                    MealItems_Photos mp = new MealItems_Photos();
                                    mp.Photo = path;
                                    mealitem.MealItems_Photos.Add(mp);
                                }
                            }
                        }
                    }



                    foreach (var mealaller in mtvms.AllergenDD)
                    {
                        if (mealaller.Selected)
                        {
                            MealItems_AllergenicFoods aller = new MealItems_AllergenicFoods();
                            aller.AllergenicFoodID = mealaller.AllergenID;
                            mealitem.MealItems_AllergenicFoods.Add(aller);
                        }
                    }


                    mealitem.ApprovalStatus = 0;


                    mealitem.MealItemId = _service.AddAndReturnID(mealitem);

                    return(RedirectToAction("Details", "MealItem", new { id = mealitem.MealItemId }));
                }
            }
            catch (Exception ex)
            {
                //Log the error (uncomment dex variable name after DataException and add a line here to write a log.)
                ModelState.AddModelError("", "Unable to save changes." + ex.Message.ToString());
            }
            mtvms = PopulateDropDown(mtvms, null);
            return(View(mtvms));
        }