Пример #1
0
        // private const string RAPID_API_GET_TEAMS_BY_SEASON_ENDPOINT_URL = "https://mlb-data.p.rapidapi.com/json/named.team_all_season.bam";

        public async Task <List <TeamSearchResultViewModel> > GetTeamsBySeason(string league, int season)
        {
            string jsonData = await this.GetTeamsBySeasonJsonAsync(season);

            GetTeamsBySeasonDTO teamsBySeasonDto = GetTeamsBySeasonDTO.FromJson(jsonData);

            if (string.IsNullOrEmpty(league))
            {
                league = "mlb";
            }

            return(await GetTeamsBySeasonViewModelFromDTO(league, season, teamsBySeasonDto));
        }
Пример #2
0
        private static async Task <List <TeamSearchResultViewModel> > GetTeamsBySeasonViewModelFromDTO(string league, int season, GetTeamsBySeasonDTO teamsBySeasonDto)
        {
            List <TeamSearchResultViewModel> returnList = new List <TeamSearchResultViewModel>();

            if (teamsBySeasonDto != null && teamsBySeasonDto.team_all_season != null &&
                teamsBySeasonDto.team_all_season.queryResults != null && teamsBySeasonDto.team_all_season.queryResults.row != null)
            {
                foreach (TeamSearchResult teamResult in teamsBySeasonDto.team_all_season.queryResults.row)
                {
                    if (!string.IsNullOrEmpty(teamResult.sport_code) && teamResult.sport_code.ToLower() == league &&
                        !string.IsNullOrWhiteSpace(teamResult.venue_name) &&
                        teamResult.name_display_full.ToLower() != "to be determined" &&
                        teamResult.name_display_full.ToLower() != "office of the commissioner" &&
                        !teamResult.name_display_full.ToLower().Contains("all-star") &&
                        teamResult.venue_name.ToLower() != "al city" && teamResult.venue_name.ToLower() != "nl city" && teamResult.venue_name.ToLower() != "tbd")
                    {
                        returnList.Add(new TeamSearchResultViewModel
                        {
                            Id         = Convert.ToInt32(teamResult.team_id),
                            TeamName   = teamResult.name_display_full,
                            League     = teamResult.league,
                            Season     = season,
                            Ballpark   = teamResult.venue_name,
                            Name       = teamResult.name,
                            City       = teamResult.city,
                            NameAbbrev = teamResult.name_abbrev,
                            LogoUrl    = "https://d2p3bygnnzw9w3.cloudfront.net/req/202001161/tlogo/br/" + teamResult.name_abbrev + "-" + season + ".png"
                        });
                    }
                    else
                    {
                        Debug.WriteLine(teamResult.ToString());
                    }
                }
            }

            return(returnList.OrderByDescending(x => x.League).ToList());
        }