public IHttpActionResult PutProducto(Producto producto) { int id = producto.ID_prod; Debug.WriteLine("ID_prod:" + producto.ID_prod); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Debug.WriteLine("id:" + id); Debug.WriteLine("ID_prod:" + producto.ID_prod); if (id != producto.ID_prod) { return(BadRequest()); } db.Entry(producto).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!ProductoExists(id)) { return(NotFound()); } else { throw; } } return(Ok(producto)); }
public async Task <IActionResult> PutProducto(int id) { if (!ProductoExists(id)) { return(BadRequest()); } var producto = await _context.Productos.FindAsync(id); var valiTitulo = Request.Form.TryGetValue("titulo", out var titulo); var valiPrecio = Request.Form.TryGetValue("precio", out var precio); precio = precio.ToString().Replace(".", ","); var valiDescr = Request.Form.TryGetValue("descripcion", out var descripcion); var valiPrecioP = Decimal.TryParse(precio.ToString(), out var precioD); if (!valiTitulo || !valiPrecio || !valiDescr || !valiPrecioP) { return(BadRequest(new JsonResult("ERROR VALIDACION"))); } producto.ProductName = titulo; producto.ProductPrice = precioD; producto.ProductDescription = descripcion; if (Request.Form.Files.Count != 0) { var file = Request.Form.Files.First(); if (file != null) { try { var actionResult = await _imageHandler.UploadImage(file); var okResult = actionResult as ObjectResult; if (okResult.Value.ToString() == "Tipo de imagen invalido") { return(BadRequest(new JsonResult(okResult.Value))); } else { var path = "/images/products/" + okResult.Value.ToString(); producto.ProductImagePath = path; } } catch (Exception) { return(BadRequest(new JsonResult("ERROR"))); } } } _context.Productos.Update(producto); _context.Entry(producto).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ProductoExists(id)) { return(NotFound()); } else { return(BadRequest()); } } return(Ok(producto)); }