public Task<HttpResponseMessage> Post([FromBody]dynamic body) { try { var category = _categoryRepository.Get((int)body.category); var product = new Product((string)body.name, (decimal)body.price, (int)body.quantity, category); _productRepository.Save(product); _uow.Commit(); return CreateResponse(HttpStatusCode.OK, product); } catch(InvalidOperationException ex) { return CreateErrorResponse(HttpStatusCode.InternalServerError, "Ops, algo deu errado", ex.Message); } catch { return CreateErrorResponse(HttpStatusCode.InternalServerError, "Ops, algo deu errado", "Falha ao cadastrar produtos"); } }
public void Save(Product product) { _context.Products.Add(product); }
public void Update(Product product) { _context.Entry<Product>(product).State = EntityState.Modified; }
public void DeveRetornarErroQuandoCompraForMaiorQueEstoque() { var product = new Product("Produto 1", 19.90M, 5, new Category("Categoria 1")); product.UpdateInventory(35); }