public async Task <bool> RemoveMovieFromCategory(RemoveMovieFromCategoryDto removeMovieFromCategory) { if (removeMovieFromCategory == null) { throw new ArgumentNullException(nameof(removeMovieFromCategory)); } if (removeMovieFromCategory.CategoryId < 1) { throw new ArgumentOutOfRangeException(nameof(removeMovieFromCategory.CategoryId), removeMovieFromCategory.CategoryId, "Category Id cannot be lower than 1."); } if (removeMovieFromCategory.MovieId < 1) { throw new ArgumentOutOfRangeException(nameof(removeMovieFromCategory.MovieId), removeMovieFromCategory.MovieId, "Movie Id cannot be lower than 1."); } if (!await _categoriesRepository.ExistsById(removeMovieFromCategory.CategoryId)) { throw new DataNotFoundException($"Category Id:{removeMovieFromCategory.CategoryId} doesn't exists."); } var result = await _categoriesRepository.RemoveMovieFromCategory(removeMovieFromCategory.CategoryId, removeMovieFromCategory.MovieId); if (result == 1) { return(true); } else { return(false); } }
public async Task <IActionResult> RemoveMovieFromCategoryAsync(RemoveMovieFromCategoryDto removeMovieFromCategory) { try { await _categoriesService.RemoveMovieFromCategory(removeMovieFromCategory); return(Ok()); } catch (DataNotFoundException ex) { return(NotFound(ex.Message)); } catch (ArgumentException ex) { return(BadRequest(ex.Message)); } }