public void AddScore(Tournament tournament, Match match, TeamSide scoredSide, string playerId, string remark = "") { var scoredTeam = scoredSide == TeamSide.Home ? match.HomeTeam : match.AwayTeam; var playerList = tournamentRepo.GetPlayersByTeam(tournament.Id, scoredTeam.Id); var player = playerList.SingleOrDefault(x => x.Id == playerId); if (player == null) { if (String.IsNullOrEmpty(remark)) { throw new PlayerNotFoundException(); } else { player = tournamentRepo.GetPlayerById(playerId); } } tournamentRepo.AddMatchScore(tournament.Id, match.Id, scoredTeam.Id, player.Id, remark); }