public async Task <List <Game> > GetUpcomingGames() { string season = DateTime.Now.ToString("yyyy"); string currentDate = DateTime.Now.ToString("yyyyMMdd"); string lastDate = DateTime.Now.AddDays(30).ToString("yyyyMMdd"); HttpClient httpClient = new HttpClient(); var result = await httpClient.GetStringAsync($"{Url2}.mlb_broadcast_info.bam?src_type='TV'&src_comment='National'&tcid=mm_mlb_schedule&sort_by='game_time_et_asc'&start_date='{currentDate}'&end_date='{lastDate}'&season={season}"); GamesResults gamesResults = JsonConvert.DeserializeObject <UpcomingGames>(result)?.MlbBroadcastInfo?.GamesResults; var data = gamesResults.GamesList; TeamLogos teamLogos = await this.GetLogos(); foreach (Game game in data) { string homeTeamName = game.HomeTeamFull.Replace(" ", ""); var homeTeamLogo = from homeTeam in teamLogos.TeamsList where homeTeamName == homeTeam.TeamName select homeTeam.Logo; game.HomeTeamLogo = homeTeamLogo.First <string>(); string awayTeamName = game.AwayTeamFull.Replace(" ", ""); var awayTeamLogo = from awayTeam in teamLogos.TeamsList where awayTeamName == awayTeam.TeamName select awayTeam.Logo; game.AwayTeamLogo = awayTeamLogo.First <string>(); } return(data); }
private async Task <TeamLogos> GetLogos() { HttpClient httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.Add("x-rapidapi-key", APIKey); var logos = await httpClient.GetStringAsync(logos_url); TeamLogos teamLogos = JsonConvert.DeserializeObject <TeamLogos>(logos); return(teamLogos); }
public async Task <IList <Team> > GetTeamsList(string season) { HttpClient httpClient = new HttpClient(); var result = await httpClient.GetStringAsync($"{Url}&sort_order='name_asc'&season={season}"); var data = JsonConvert.DeserializeObject <TeamQuery>(result); IList <Team> teamsList = data.TeamAllSeason.QueryResults.Teams; TeamLogos teamLogos = await this.GetLogos(); foreach (Team team in teamsList) { string teamName = team.NameDisplayLong.Replace(" ", ""); var selectedTeamLogo = from team2 in teamLogos.TeamsList where teamName == team2.TeamName select team2.Logo; team.Logo = selectedTeamLogo.First <string>(); } return(teamsList); }