public IActionResult Put(int publisherId, int id, [FromBody] BookUpdateDTO book) { if (book == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var bookToUpdate = _rep.GetBook(publisherId, id); if (bookToUpdate == null) { return(NotFound()); } // why is this "book" and not "bookToUpdate"? _rep.UpdateBook(publisherId, id, book); _rep.Save(); return(NoContent()); }