void InitialiseSummonerCache() { SummonerCache = new Dictionary <RegionType, Dictionary <int, Summoner> >(); foreach (RegionType regionType in Enum.GetValues(typeof(RegionType))) { SummonerCache[regionType] = new Dictionary <int, Summoner>(); } using (var connection = Provider.GetConnection()) { using (var select = new DatabaseCommand("select {0} from summoner", connection, null, Summoner.GetFields())) { using (var reader = select.ExecuteReader()) { while (reader.Read()) { Summoner summoner = new Summoner(reader); SummonerCache[summoner.Region][summoner.AccountId] = summoner; } } } } }