public async Task <IActionResult> Get([FromQuery] MovieSearchQuery query) { var movieTrailers = await mediator.Send(new LocalMovieTrailerQuery(query)); if (movieTrailers.Any()) { return(Ok(movieTrailers)); } movieTrailers = await mediator.Send(new ExternalMovieTrailerQuery(query)); return(Ok(movieTrailers)); }
public async Task <ActionResult> EditAsync([Bind("query")] MovieSearch item) { if (ModelState.IsValid) { MovieSearchQuery query = new MovieSearchQuery() { query = item.query }; var movieResults = await _movieAdapterService.GetMovieListsByQueryAsync(query); return(View(new MovieSearch() { query = item.query, Results = movieResults })); } return(View(item)); }
public LocalMovieTrailerQuery(MovieSearchQuery query) { Query = query; }
public ExternalMovieTrailerQuery(MovieSearchQuery query) { Query = query; }
public async Task <IEnumerable <MovieSearchResult> > GetMovieListsByQueryAsync(MovieSearchQuery searchQuery) { var tempResults = await _movieAPI.GetMovieListsByQueryAsync(searchQuery.query); var prepatedResults = tempResults.Results.Select( item => new MovieSearchResult() { Id = item.Id, OriginalTitle = item.OriginalTitle, PosterPath = _movieAPI.GetImageURL(item.PosterPath), ReleaseDate = item.ReleaseDate, Title = item.OriginalTitle }).ToList(); return(prepatedResults); }