public async Task <long> CreateGame(long playerId, int amountOfBots) { var game = new Game(); game.Id = await _gameRepository.Create(game); List <Player> players = await CreatePlayerList(playerId, amountOfBots); var gamePlayers = new List <GamePlayer>(); foreach (Player player in players) { GamePlayer gamePlayer = CustomMapper.GetGamePlayer(player, game.Id); gamePlayers.Add(gamePlayer); } await _gamePlayerRepository.CreateMany(gamePlayers, ToStringHelper.GetTableName(typeof(GamePlayer))); List <Log> logs = LogHelper.GetCreationGameLogs(gamePlayers, game); await _logRepository.CreateMany(logs, ToStringHelper.GetTableName(typeof(Log))); long gameId = game.Id; return(gameId); }
/// <summary> /// Generate toString implementation using object properties and fields. /// </summary> /// <param name="source">this</param> /// <param name="skipNulls">true if null properties should be excluded, false by default</param> /// <returns>toString</returns> public static string MembersToString(this object source, bool skipNulls = false) { Preconditions.IsNotNull(source, () => new ArgumentNullException("source")); return(ToStringHelper.Of(source) .AddMembers() .SkipNulls(skipNulls) .ToString()); }