Example #1
0
        public async Task <IActionResult> Create([Bind("Code,Name,Photo,Price")]
                                                 ProductCreateRequestModel productCreateRequestModel)
        {
            if (ModelState.IsValid)
            {
                await _productCatalogService.CreateProduct(productCreateRequestModel);
            }

            return(RedirectToAction("Index"));
        }
        /// <summary>
        /// Add product to database
        /// </summary>
        /// <param name="productCreateRequestModel"></param>
        /// <returns></returns>
        public async Task <ProductCreateResponseModel> CreateProduct(ProductCreateRequestModel productCreateRequestModel)
        {
            var content        = new StringContent(JsonConvert.SerializeObject(productCreateRequestModel), Encoding.UTF8, "application/json");
            var createResponse = await _httpClient.PostAsync(Endpoint, content);

            if (!createResponse.IsSuccessStatusCode)
            {
                throw new Exception("Product couldn't be added.");
            }

            var result   = createResponse.Content.ReadAsStringAsync().Result;
            var response = JsonConvert.DeserializeObject <ProductCreateResponseModel>(result);

            return(response);
        }
Example #3
0
        public async Task <IActionResult> Create([FromBody] ProductCreateRequestModel model)
        {
            var response = await _mediator.Send(new ProductCreateServiceRequest(model));

            return(Ok(response));
        }
Example #4
0
 public ProductCreateServiceRequest(ProductCreateRequestModel model)
 {
     Model = model;
 }