コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }
コード例 #3
0
        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);
        }