public async Task <IActionResult> PutProduct([FromRoute] int id, [FromBody] Product product)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != product.Id)
            {
                return(BadRequest());
            }

            _context.Entry(product).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ProductExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
예제 #2
0
 public HttpResponseMessage PatchProduct(Product product)
 {
     if (product == null)
     {
         return(Request.CreateResponse(HttpStatusCode.BadRequest));
     }
     try
     {
         db.Entry <Product>(product).State = System.Data.Entity.EntityState.Modified;
         db.SaveChanges();
         var result = product;
         return(Request.CreateResponse(HttpStatusCode.OK, result));
     }
     catch (Exception)
     {
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, "Falha ao alterar o produto"));
     }
 }
예제 #3
0
 public HttpResponseMessage PatchCategories(Category category)
 {
     if (category == null)
     {
         return(Request.CreateResponse(HttpStatusCode.BadRequest));
     }
     try
     {
         db.Entry <Category>(category).State = System.Data.Entity.EntityState.Modified;
         db.SaveChanges();
         var result = category;
         return(Request.CreateResponse(HttpStatusCode.OK, result));
     }
     catch (Exception)
     {
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, "Falha ao alterar a Categoria"));
     }
 }
        public HttpResponseMessage PatchProduct(Product product)           // Recebendo um produto da Requisição
        {
            if (product == null)                                           // se o produto for nulo
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest)); // retorna uma mensagem de erro BadRequest, se nao for continue
            }
            try
            {
                db.Entry <Product>(product).State = System.Data.Entity.EntityState.Modified; // Informa que o estado do produto foi modificado e salva a modificação
                db.SaveChanges();                                                            // Commit no banco de dados

                var result = product;                                                        // salva o valor da variavel products em uma variavel
                return(Request.CreateResponse(HttpStatusCode.OK, product));                  // Retorno um response na tela, com um 200OK passando o produto para ser renderizado
            }
            catch (System.Exception)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, "Falha ao alterar o produto."));
            }
        }
예제 #5
0
        public HttpResponseMessage PatchProduct(Products product)
        {
            if (product == null)
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }

            try
            {
                db.Entry <Products>(product).State = System.Data.Entity.EntityState.Modified;
                db.SaveChanges();
                var response = product;
                return(Request.CreateResponse(HttpStatusCode.OK, response));
            }
            catch (Exception e)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, $"Erro ao atualizar Produto.Erro: {e.Message}"));
            }
        }
예제 #6
0
        [Route("products")] //Para configurar a rota do HttpResponseMessage
        public HttpResponseMessage PatchProduct(Product product)
        {
            if (product == null)
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }
            try
            {
                //Informa que o estado foi modificado.
                db.Entry <Product>(product).State = System.Data.Entity.EntityState.Modified;
                db.SaveChanges();

                //Boa prática retornar o que foi postado.
                var result = product;

                return(Request.CreateResponse(HttpStatusCode.OK, result));
            }
            catch (Exception)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, "Falha ao incluir o Produto."));
            }
        }
예제 #7
0
        public HttpResponseMessage PutProduto(Produto produto)
        {
            if (produto == null)
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }

            try
            {
                db.Entry <Produto>(produto).State = System.Data.Entity.EntityState.Modified;
                db.SaveChanges();
                var resultado = db.Produto;
                return(Request.CreateResponse(HttpStatusCode.OK, resultado));
            }
            catch (Exception)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, "Falha ao incluir produto!"));
            }
        }
        public HttpResponseMessage UpdateProduct(Product product)
        {
            if (product == null)
            {
                return Request.CreateResponse(HttpStatusCode.BadRequest);
            }

            try
            {
                db.Entry<Product>(product).State = EntityState.Modified;

                db.SaveChanges();

                return Request.CreateResponse(HttpStatusCode.OK, product);
            }
            catch (Exception ex)
            {
                return Request.CreateResponse(HttpStatusCode.InternalServerError, "Falha ao incluir o produto");
            }

        }