public async Task <ActionResult> Edit([Bind(Include = "Id,Name,Price,ListItemId,ImageFile,Status,Description,Type")] ItemDetailLocal itemDetail)
        {
            itemDetail.EditDate = CommonService.GetSystemTime();
            itemDetail.Image    = "https://via.placeholder.com/40x40";
            if (ModelState.IsValid)
            {
                var changes = db.ItemDetails.FirstOrDefault(i => i.Id == itemDetail.Id);
                changes.Name            = itemDetail.Name;
                changes.Description     = itemDetail.Description;
                changes.EditDate        = itemDetail.EditDate;
                changes.Status          = itemDetail.Status;
                changes.Type            = itemDetail.Type;
                changes.Price           = itemDetail.Price;
                db.Entry(changes).State = EntityState.Modified;
                var relativePath = ConfigurationManager.AppSettings["saveImagesIn"];
                if (itemDetail.ImageFile != null)
                {
                    changes.Image = Functions.SaveFile(itemDetail.ImageFile, relativePath, Server.MapPath(relativePath), changes.ListItemId + "_Menu_" + changes.Id);
                }
                await db.SaveChangesAsync();

                return(RedirectToAction("Index", new { id = changes.ListItemId }));
            }

            ViewBag.ListItemId = new SelectList(db.ListItems, "Id", "Name", itemDetail.ListItemId);
            return(View(itemDetail));
        }
        // GET: MenuItems/Edit/5
        public async Task <ActionResult> Edit(long?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ItemDetail item = await db.ItemDetails.FindAsync(id);

            ItemDetailLocal itemDetail = item.ItemDetailMapper();

            if (itemDetail == null)
            {
                return(HttpNotFound());
            }
            ViewBag.ListItemId = new SelectList(db.ListItems, "Id", "Name", itemDetail.ListItemId);
            return(View(itemDetail));
        }
        public async Task <ActionResult> Create([Bind(Include = "Id,Name,Price,ListItemId,ImageFile,Status,Description,Type")] ItemDetailLocal itemDetail)
        {
            itemDetail.CreationDate = itemDetail.EditDate = CommonService.GetSystemTime();
            itemDetail.Image        = "img added";
            var item = itemDetail.ItemDetailMapper();

            if (ModelState.IsValid)
            {
                db.ItemDetails.Add(item);
                await db.SaveChangesAsync();

                var relativePath = ConfigurationManager.AppSettings["saveImagesIn"];

                if (itemDetail.ImageFile != null)
                {
                    Functions.SaveFile(itemDetail.ImageFile, relativePath, Server.MapPath(relativePath), item.ListItemId + "_Menu_" + item.Id);
                }

                return(RedirectToAction("Index", new { id = item.ListItemId }));
            }

            ViewBag.ListItemId = new SelectList(db.ListItems, "Id", "Name", item.ListItemId);
            return(View(itemDetail));
        }