public IActionResult Patch(int id, [FromBody] JsonPatchDocument <CategoryModification> patchDoc) { if (patchDoc == null) { return(BadRequest()); } var model = _bookService.GetCategory(id); if (model == null) { return(NotFound()); } var toPatch = new CategoryModification { CategoryName = model.Name, }; patchDoc.ApplyTo(toPatch, ModelState); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (toPatch.CategoryName == "Category") { ModelState.AddModelError("CategoryName", "Category name can not be 'Category'"); } TryValidateModel(toPatch); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } _bookService.UpdateCategory(id, toPatch.CategoryName); return(NoContent()); }
public IActionResult Put(int id, [FromBody] CategoryModification category) { if (category == null) { return(BadRequest()); } if (category.CategoryName == "Category") { ModelState.AddModelError("CategoryName", "Category name can not be 'Category'"); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var newCategory = _bookService.UpdateCategory(id, category.CategoryName); return(CreatedAtRoute("GetCategory", new { id = newCategory.Id }, category)); }