Exemplo n.º 1
0
        /// <summary>
        ///Proceso de creación de un producto, asíncrono.
        /// </summary>
        /// <param name="model">Objeto de tipo producto.</param>
        /// <returns>Retorna el nevo objeto creado con su id</returns>
        public async Task <ProductApiModel> CreateProductAsync([FromBody] ProductCreated model)
        {
            ProductApiModel pro = null;

            response = await client.PostAsJsonAsync($"{_HostProduct}v1/api/product", model);

            var jsonSerialize = await response.Content.ReadAsStringAsync();

            if (!response.IsSuccessStatusCode)
            {
                string mensaje = JsonConvert.SerializeObject(jsonSerialize);
                throw new HttpException(new List <string> {
                    mensaje
                }, response.StatusCode);
            }

            // return URI of the created resource.
            pro = JsonConvert
                  .DeserializeObject <ProductApiModel>(jsonSerialize.ToString()
                                                       , new JsonSerializerSettings()
            {
                MissingMemberHandling =
                    MissingMemberHandling.Ignore
            });

            pro.CheckIsNotNull();

            return(pro);
        }