private NbaGameDto CreateGameDtoWithoutPlayers(NbaShortGame nbaShortGame) { Guid gameId = nbaShortGame.GameId; DateTime startDateTime = nbaShortGame.StartDateTime; Guid homeTeamId = nbaShortGame.HomeTeamId; Guid awayTeamId = nbaShortGame.AwayTeamId; TeamDto homeTeam = GetTeam(homeTeamId); TeamDto awayTeam = GetTeam(awayTeamId); List <PlayerDto> homePlayerList = GetPlayers(homeTeamId); List <PlayerDto> awayPlayerList = GetPlayers(awayTeamId); homeTeam.PlayerList = homePlayerList; awayTeam.PlayerList = awayPlayerList; NbaGameDto nbaGameDto = new NbaGameDto { GameId = gameId, StartDateTime = startDateTime, HomeTeam = homeTeam, AwayTeam = awayTeam }; return(nbaGameDto); }
public List <NbaGameDto> GetGames(int numberGameDays, bool loadPlayers) { lock (_lockObject) { List <NbaShortGame> nbaShortGameList = new List <NbaShortGame>(); List <NbaGameDto> nbaGameList = new List <NbaGameDto>(); using (NpgsqlConnection npgsqlConnection = new NpgsqlConnection(ConnectionString)) { npgsqlConnection.Open(); const string sqlCommandText = "select * from nba.get_games(@number_games_days)"; using (NpgsqlCommand npgsqlCommand = new NpgsqlCommand(sqlCommandText, npgsqlConnection)) { npgsqlCommand.CommandType = CommandType.Text; NpgsqlParameter npgsqlParameter1 = new NpgsqlParameter("number_games_days", numberGameDays); npgsqlCommand.Parameters.Add(npgsqlParameter1); using (NpgsqlDataReader npgsqlDataReader = npgsqlCommand.ExecuteReader()) { if (!npgsqlDataReader.HasRows) { const string message = "GetGames() has no rows"; Logger.Info(message); return(nbaGameList); } while (npgsqlDataReader.Read()) { Guid gameId = npgsqlDataReader.GetGuid("game_id"); DateTime startDateTime = npgsqlDataReader.GetDateTime("start_time"); Guid homeTeamId = npgsqlDataReader.GetGuid("home_id"); Guid awayTeamId = npgsqlDataReader.GetGuid("away_id"); NbaShortGame nbaShortGame = new NbaShortGame { GameId = gameId, StartDateTime = startDateTime, HomeTeamId = homeTeamId, AwayTeamId = awayTeamId }; nbaShortGameList.Add(nbaShortGame); } } } } foreach (NbaShortGame nbaShortGame in nbaShortGameList) { NbaGameDto nbaGame = CreateGameDto(nbaShortGame, loadPlayers); nbaGameList.Add(nbaGame); } return(nbaGameList); } }
private NbaGameDto CreateGameDto(NbaShortGame nbaShortGame, bool loadPlayers) { if (loadPlayers) { return(CreateGameDtoWithPlayers(nbaShortGame)); } return(CreateGameDtoWithoutPlayers(nbaShortGame)); }