private Book UpdateBookCategories(Book oldBook, List <Guid> newCategoryIds, ref bool isSaved) { var oldBookCategories = _bookCategoryService.Where(x => x.BookId == oldBook.Id).ToList(); // create new book - category ids var newIdsAdded = newCategoryIds.Where(id => oldBookCategories.All(bc => bc.CategoryId != id)).ToList(); if (newIdsAdded.Any()) { _bookCategoryService.CreateMany( newIdsAdded.Select(id => new BookCategory { CategoryId = id, BookId = oldBook.Id }), out isSaved ); } // delete old book - category ids var oldIdsRemoved = oldBookCategories.Where(bc => !newCategoryIds.Contains(bc.CategoryId)).ToList(); if (oldIdsRemoved.Any()) { _bookCategoryService.Delete(oldIdsRemoved, out isSaved); } return(oldBook); }
public ActionResult <bool> Delete([FromBody] JObject obj) { var categoryId = obj["categoryId"].ToObject <string>(); _bookCategoryService.Delete(categoryId); return(new ActionResult <bool>(true)); }
public IActionResult Delete(int id) { if (id == 0) { return(new BadRequestResult()); } else { _bookCategoryService.Delete(id); _bookCategoryService.Save(); return(new OkObjectResult(id)); } }
public async Task <ActionResult <ApiResponse> > Delete(int id) { return(new ApiResponse($"The record with {id} was deleted", await bookCategoryService.Delete(id))); }