public async Task <int> CreateDrink(DrinkBindingModel model) { try { var drink = this.Mapper.Map <Drink>(model); this.AssignIngredientsToDrink(drink, model.Ingredients); this.DbContext.Drinks.Add(drink); await this.DbContext.SaveChangesAsync(); } catch { //failure return(0); } //success return(1); }
public async Task <IActionResult> AddDrink(DrinkBindingModel model) { if (!this.ModelState.IsValid) { var ingredients = this.storageService.GetAllIngredientsNames(); this.ViewBag.Ingredients = ingredients; return(this.View()); } var result = await this.storageService.CreateDrink(model); if (result == 0) { this.TempData[WebConstants.BadMessage] = string.Format(Messages.AddingFailureMessage, typeof(Drink).Name, model.Name); } else { this.TempData[WebConstants.GoodMessage] = string.Format(Messages.AddingSuccessMessage, typeof(Drink).Name, model.Name); } return(RedirectToAction("AddDrink", "Storage", new { Area = WebConstants.AdminArea })); }