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)); }
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)); }