// GET: Matches/FullDetails/id public async Task <MatchFullDetailsJsonModel> FullDetails(int id) { MatchFullDetailsJsonModel fullDetails = _matchesService.GetFullMatchDetails(id); var match = await _context.Matches .Include(m => m.AwayTeam) .Include(m => m.HomeTeam) .FirstOrDefaultAsync(m => m.Id == id); if (match == null) { return(null); } var matchDetails = new MatchFullDetailsJsonModel() { HomeTeamName = match.HomeTeam.Name, HomeTeamGoalsScored = match.HomeGoalsCount, HomeTeamLogoUrl = "TODO", AwayTeamName = match.AwayTeam.Name, AwayTeamLogoUrl = "TODO", AwayTeamGoalsScored = match.AwayGoalsCount, Time = match.Time, AwayTeamScorers = new List <string>() { "mirko", "svirko" }, HomeTeamScorers = new List <string>() { "mirko", "svirko" } }; return(fullDetails); }
public MatchFullDetailsJsonModel GetFullMatchDetails(int id) { var match = _context.Matches .Include(m => m.AwayTeam) .Include(m => m.HomeTeam) .FirstOrDefault(m => m.Id == id); if (match == null) { return(null); } var awayScorerNames = _context.Goals.Where(x => x.MatchId == id && x.TeamId == match.AwayTeamId) .Select(x => x.PlayerName).ToList(); var homeScorerNames = _context.Goals.Where(x => x.MatchId == id && x.TeamId == match.HomeTeamId) .Select(x => x.PlayerName).ToList(); var matchDetails = new MatchFullDetailsJsonModel() { HomeTeamName = match.HomeTeam.Name, HomeTeamGoalsScored = match.HomeGoalsCount, HomeTeamLogoUrl = match.HomeTeamId + ".jpg", AwayTeamName = match.AwayTeam.Name, AwayTeamLogoUrl = match.AwayTeamId + ".jpg", AwayTeamGoalsScored = match.AwayGoalsCount, Time = match.Time, AwayTeamScorers = awayScorerNames, HomeTeamScorers = homeScorerNames }; return(matchDetails); }