async Task AddTeams() { WorldCupData = await LoadJsonData(); AddGroupTeams(WorldCupData, "A", WorldCupData.groups.a.matches); AddGroupTeams(WorldCupData, "B", WorldCupData.groups.b.matches); AddGroupTeams(WorldCupData, "C", WorldCupData.groups.c.matches); AddGroupTeams(WorldCupData, "D", WorldCupData.groups.d.matches); AddGroupTeams(WorldCupData, "E", WorldCupData.groups.e.matches); AddGroupTeams(WorldCupData, "F", WorldCupData.groups.f.matches); AddGroupTeams(WorldCupData, "G", WorldCupData.groups.g.matches); AddGroupTeams(WorldCupData, "H", WorldCupData.groups.h.matches); }
private void AddGroupTeams(WorldCupData jsonData, string groupName, List <Match> matches) { var teamIdsInGroup = matches.Select(m => m.home_team) .Union(matches.Select(m => m.away_team)) .Distinct(); var teamsInGroup = from t in jsonData.teams from id in teamIdsInGroup where t.id == id select t; foreach (var team in teamsInGroup) { TeamsDictionary.Add(team.fifaCode, new SoccerTeam() { TeamID = team.fifaCode, TeamName = team.name, NumberColor = Colors.White, GroupID = groupName }); } }