public IActionResult AddPizza(PizzaEditViewModel pizzaEditViewModel) { //Basic validation //if (ModelState.IsValid) //{ // _pizzaRepository.CreatePizza(pizzaEditViewModel.Pizza); // return RedirectToAction("Index"); //} //custom validation rules if (ModelState.GetValidationState("Pizza.Price") == ModelValidationState.Valid || pizzaEditViewModel.Pizza.Price < 0) { ModelState.AddModelError(nameof(pizzaEditViewModel.Pizza.Price), "The price of the pizza should be higher than 0"); } if (pizzaEditViewModel.Pizza.IsPizzaOfTheWeek && !pizzaEditViewModel.Pizza.InStock) { ModelState.AddModelError(nameof(pizzaEditViewModel.Pizza.IsPizzaOfTheWeek), "Only pizzas that are in stock should be Pizza of the Week"); } if (ModelState.IsValid) { _pizzaRepository.CreatePizza(pizzaEditViewModel.Pizza); return(RedirectToAction("Index")); } return(View(pizzaEditViewModel)); }
public ActionResult CreatePizza([FromBody] Pizza pizza) { _pizzaRepository.CreatePizza(pizza); return(CreatedAtRoute("GetPizza", new { PizzaId = pizza.PizzaId }, pizza)); }
public async Task <Result <PizzaDto> > InsertPizzaAsync(PizzaRequest request) { Result <Pizza> pizzaOrError = _pizzaRepository.CreatePizza(request); if (pizzaOrError.IsFailure) { return(Result.FromError <PizzaDto>(pizzaOrError)); } _pizzaRepository.Insert(pizzaOrError.Value); //fire event here await _unitOfWork.SaveAsync(); return(Result.Ok(pizzaOrError.Value.ToPizzaDto())); }
public async Task CreatePizza(Pizza pizza) { await _repository.CreatePizza(pizza).ConfigureAwait(false); }
public PizzaViewModel Post([FromBody] PizzaViewModel pizza) { return(_repository.CreatePizza(pizza)); }