Exemple #1
0
        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());
        }
Exemple #2
0
        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));
        }