GameConfiguration IGameConfigCacheProvider.GetConfig(int matchId) { if (this.HttpCache[matchId.ToString()] == null) { using (IGameDataService gameDataService = new GameDataService()) { IEnumerable<ConfigSection> sections = gameDataService.GetConfigSections(matchId); var jsonConfig = string.Join("", sections.OrderBy(section => section.SectionId)); GameConfiguration config = JsonSerializer.DeseriaizeFromJSON<GameConfiguration>(jsonConfig); (this as IGameConfigCacheProvider).CacheConfig(matchId, config); } } return this.HttpCache[matchId.ToString()] as GameConfiguration; }