//get info of this cast and movies public async Task <CastDetailResponseModel> GetCastById(int id) { var cast = await _castRepository.GetByIdAsync(id); var movies = new List <MovieCardResponseModel>(); foreach (var movie in cast.MovieCasts) { var singleMovie = await _movieRepository.GetByIdAsync(movie.MovieId); movies.Add(new MovieCardResponseModel { Id = singleMovie.Id, Title = singleMovie.Title, Budget = singleMovie.Budget, PosterUrl = singleMovie.PosterUrl, Rating = singleMovie.Rating, Revenue = singleMovie.Revenue }); } var result = new CastDetailResponseModel { Id = cast.Id, Name = cast.Name, Gender = cast.Gender, TmdbUrl = cast.TmdbUrl, ProfilePath = cast.ProfilePath, Movies = movies }; return(result); }
public async Task <CastDetailResponseModel> GetCastDetailsWithMovies(int id) { var cast = await _castRepository.GetByIdAsync(id); var castMovies = new List <MovieResponseModel>(); foreach (var movie in cast.MovieCasts) { castMovies.Add(new MovieResponseModel() { Id = movie.MovieId, PosterUrl = movie.Movie.PosterUrl, Title = movie.Movie.Title }); } CastDetailResponseModel castDetailResponseModel = new CastDetailResponseModel(); var response = castDetailResponseModel; response.Id = cast.Id; response.Name = cast.Name; response.Gender = cast.Gender; response.TmdbUrl = cast.TmdbUrl; response.ProfilePath = cast.ProfilePath; response.Movies = castMovies; return(response); }