public RestaurantMenuViewModel(RestaurantMenuItem model) { Name = model.Name; PictureFileName = model.PictureFile; Description = model.Description; Price = model.Price; }
public ActionResult Add(RestaurantMenuViewModel model, HttpPostedFileBase menuimage) { try { //Explicitly Validate Model for menu image if (menuimage == null || menuimage.ContentLength < 1 || (menuimage.ContentType != "image/jpeg" && menuimage.ContentType != "image/png")) ModelState.AddModelError("addstatus", "A Menu Item needs to have a valid Image, Only JPEG and PNG images are supported"); if (ModelState.IsValid) { // Attempt to add the offer var restauranttable = new RestaurantMenuItem { Name = model.Name, Description = model.Description, Price = model.Price, PictureFile = new ImagesController().PutImage(menuimage, null).ToString("n") }; var itemid = Repository.Add(restauranttable); if (itemid > 0) { TempData[TempDataStringResuorce.ActionResultNotification] = new ActionResultNotification { Message = String.Format("Menu Item \"{0}\" with Id:{1} was successfully Added", model.Name, itemid), Result = true, State = ActionResultNotification.MessageState.Information }; return RedirectToAction("Index"); } } // If we got this far, something failed, redisplay form TempData[TempDataStringResuorce.ActionResultNotification] = new ActionResultNotification { Message = ModelState.ContainsKey("addstatus") ? ModelState["addstatus"].Errors[0].ErrorMessage : "There was an Error in adding the new Menu item, please try again", Result = false, State = ActionResultNotification.MessageState.Warning }; return View(model); } catch (Exception e) { TempData[TempDataStringResuorce.ActionResultNotification] = new ActionResultNotification { Message = e.Message, Result = false, State = ActionResultNotification.MessageState.Error }; return View(model); } }