public IHttpActionResult Put(int id, EditBookBm bind) { if (!this._service.ContainsBook(id)) { return(this.NotFound()); } bool isValid; this._service.EditBook(id, bind, out isValid); if (!isValid) { return(this.StatusCode(HttpStatusCode.BadRequest)); } return(this.Ok()); }
public void EditBook(int id, EditBookBm bind, out bool isValid) { isValid = true; Book model = this.Context.Books.Find(id); model.Title = bind.Title; model.AgeRestriction = (AgeRestriction)Enum.Parse(typeof(AgeRestriction), bind.AgeRestriction); model.EditionType = (EditionType)Enum.Parse(typeof(EditionType), bind.EditionType); model.ReleaseDate = DateTime.ParseExact(bind.ReleaseDate, "dd-MM-yyyy", null); if (this.Context.Authors.Find(bind.AuthorId) == null) { isValid = false; return; } model.Author = this.Context.Authors.Find(bind.AuthorId); model.Copies = bind.Copies; model.Description = bind.Description; model.Price = bind.Price; this.Context.SaveChanges(); }