public EliteMedalsViewModel( int season, Dictionary <string, Player> playersDict, EliteMedals eliteMedals, SeasonResults seasonResults) { this.season = season; var players = new List <PlayerInfo>(); foreach (string playerId in playersDict.Keys) { Player player = playersDict[playerId]; EliteMedals.EliteMedal existingMedal = eliteMedals.GetExistingMedal(playerId); HashSet <Tuple <SeasonResults.PlayerResult, bool> > topThreeResults = seasonResults.GetTopThreeResults(playerId, existingMedal.Value); FormattedMedal formattedExistingMedal = eliteMedals.GetFormattedExistingMedal(playerId); FormattedMedal nextMedal = eliteMedals.GetNextMedal(playerId); var playerInfo = new PlayerInfo( playerId, player.Name, player.PersonalNumber, topThreeResults, existingMedal.Value, formattedExistingMedal, nextMedal); players.Add(playerInfo); } Players = players.ToArray(); }
public PlayerInfo( string playerId, string name, int personalNumber, HashSet <Tuple <SeasonResults.PlayerResult, bool> > topThreeResults, EliteMedals.EliteMedal.EliteMedalValue existingMedal, FormattedMedal formattedExistingMedal, FormattedMedal formattedNextMedal) { PlayerId = playerId; Name = name; PersonalNumber = personalNumber; TopThreeResults = topThreeResults; ExistingMedal = existingMedal; this.formattedExistingMedal = formattedExistingMedal; this.formattedNextMedal = formattedNextMedal; }