public List <Season> ConvertToSeason(SeriesDetailsJson seriesJson, long seriesId) { var seasons = new List <Season>(); foreach (var seasonJson in seriesJson.SeasonsJson) { DateTime?airedFromDateValue = null; if (seasonJson.AirDate.HasValue) { airedFromDateValue = seasonJson.AirDate.Value.DateTime; } var season = new Season { MovieDbId = seasonJson.Id, SeriesId = seriesId, Name = seasonJson.Name, Overview = seasonJson.Overview, SeasonNumber = (int?)seasonJson.SeasonNumber, AiredFrom = airedFromDateValue, NumberOfEpisodes = (int?)seasonJson.EpisodeCount }; seasons.Add(season); } return(seasons); }
// tv/{id}/ public async Task <SeriesDetailsJson> GetSeriesDetails(long seriesId) { var request = "/tv/" + seriesId; request = AddApiVersion(request); request = AddApiKey(request); var response = await GetResponse(request); SeriesDetailsJson seriesDetailsJson = null; if (response != null) { seriesDetailsJson = JsonConvert.DeserializeObject <SeriesDetailsJson>(response.ToString()); } return(seriesDetailsJson); }
public async Task <Series> ConvertToSeries(SeriesDetailsJson seriesJson) { DateTime?firstAirDateValue = null; if (seriesJson.FirstAirDate.HasValue) { firstAirDateValue = seriesJson.FirstAirDate.Value.DateTime; } DateTime?lastAirDateValue = null; if (seriesJson.LastAirDate.HasValue) { lastAirDateValue = seriesJson.LastAirDate.Value.DateTime; } var series = new Series { MovieDbId = seriesJson.Id, Name = seriesJson.Name, OriginalName = seriesJson.OriginalName, Overview = seriesJson.Overview, Status = ConvertToStatus(seriesJson.Status), // TODO check if this date conversion is correct AiredFrom = firstAirDateValue, AiredTo = lastAirDateValue, NumberOfSeasons = Convert.ToInt32(seriesJson.NumberOfSeasons), NumberOfEpisodes = Convert.ToInt32(seriesJson.NumberOfEpisodes), PosterName = seriesJson.PosterPath // TODO episode runtime can have mutliple values // TODO many to many mappings }; await ConvertToGenres(series, seriesJson.GenresJson); /* ConvertToRuntimes(series, seriesJson.EpisodeRunTime);*/ return(series); }