public async Task <Result <Exception, Core.Results.Unit> > Handle(MovieRemoveMultipleCommand request, CancellationToken cancellationToken) { var getAllMovieCallback = _movieRepository.GetAll(); if (getAllMovieCallback.IsFailure) { return(getAllMovieCallback.Failure); } var movies = getAllMovieCallback.Success.Where(x => request.MovieIds.Contains(x.Id)).ToList(); if (movies.Any()) { movies.ForEach(x => x.SetAsRemoved()); var updateMoviesCallback = await _movieRepository.UpdateAsync(movies); if (updateMoviesCallback.IsFailure) { return(updateMoviesCallback.Failure); } } return(Unit.Successful); }
public async Task <IActionResult> DeleteMultiplesAsync(MovieRemoveMultipleCommand command) { return(HandleCommand(await _mediator.Send(command))); }