Exemple #1
0
        public async Task <IHttpActionResult> GetSeasons(string teamReference)
        {
            bool converts = int.TryParse(teamReference, out int teamId);

            if (converts == false)
            {
                return(BadRequest());
            }

            DatabaseAccess.ExternalModel.Team databaseTeam = await _teamRepository.GetTeamAsync(teamId);

            if (databaseTeam == null)
            {
                return(NotFound());
            }

            ReadOnlyCollection <SeasonsForTeamResult> seasonsForTeamResults =
                await _teamRepository.GetSeasonsForTeamsAsync(teamId);

            Team team = new Team();

            team.TeamId    = databaseTeam.TeamId;
            team.ShortName = databaseTeam.ShortName;
            team.Link      = Url.Content("~/") + "team/" + team.TeamId;

            List <Season> seasons = new List <Season>();

            foreach (SeasonsForTeamResult result in seasonsForTeamResults)
            {
                Season newSeason = new Season();

                newSeason.SeasonId  = result.SeasonId;
                newSeason.ShortName = result.ShortName;
                newSeason.Link      = Url.Content("~/") + "season/" + newSeason.SeasonId;

                seasons.Add(newSeason);
            }

            team.Seasons = seasons;

            return(Ok(team));
        }
Exemple #2
0
        public async Task <IHttpActionResult> Get(string teamId, string seasonId)
        {
            bool teamIdConverts   = int.TryParse(teamId, out int teamRef);
            bool seasonIdConverts = int.TryParse(seasonId, out int seasonRef);

            if (teamIdConverts == false || seasonIdConverts == false)
            {
                return(BadRequest());
            }

            ReadOnlyCollection <TeamGameResult> results = await _gameRepository.GetGamesAsync(teamRef, seasonRef);

            List <Game> games = new List <Game>();

            foreach (TeamGameResult result in results)
            {
                Game game = Game.Convert(result);

                if (result.Season != null)
                {
                    Season season = new Season();
                    season.SeasonId     = result.Season.SeasonId;
                    season.ShortName    = result.Season.ShortName;
                    season.WinterSeason = null;
                    season.Link         = Url.Content("~/") + "season/" + result.Season.SeasonId;

                    game.Season = season;
                }

                if (result.HomeTeam != null)
                {
                    Team homeTeam = new Team();
                    homeTeam.TeamId    = result.HomeTeam.TeamId;
                    homeTeam.ShortName = result.HomeTeam.ShortName;
                    homeTeam.Link      = Url.Content("~/") + "team/" + result.HomeTeam.TeamId;

                    game.HomeTeam = homeTeam;
                }

                if (result.AwayTeam != null)
                {
                    Team awayTeam = new Team();
                    awayTeam.TeamId    = result.AwayTeam.TeamId;
                    awayTeam.ShortName = result.AwayTeam.ShortName;
                    awayTeam.Link      = Url.Content("~/") + "team/" + result.AwayTeam.TeamId;

                    game.AwayTeam = awayTeam;
                }

                if (result.Division != null)
                {
                    Division division = new Division();
                    division.DivisionId = result.Division.DivisionId;
                    division.ShortName  = result.Division.ShortName;
                    division.Link       = Url.Content("~/") + "division/" + result.Division.DivisionId;

                    game.Division = division;
                }

                if (result.Venue != null)
                {
                    Venue venue = new Venue();
                    venue.VenueId   = result.Venue.VenueId;
                    venue.ShortName = result.Venue.ShortName;
                    venue.Link      = Url.Content("~/") + "venue/" + result.Venue.VenueId;

                    game.Venue = venue;
                }

                game.Link = Url.Content("~/") + "game/" + result.GameId;
                games.Add(game);
            }

            GameList gameList = new GameList();

            gameList.Games = games;

            return(Ok(gameList));
        }