Example #1
0
 internal async System.Threading.Tasks.Task <Game> GetGameByIdAsync(long id)
 {
     try
     {
         if (GameCache.TryGetValue(id, out Game gameInCache))
         {
             return(gameInCache);
         }
         Uri uri        = new Uri("https://api-endpoint.igdb.com/" + "games/" + id);
         var jsonResult = webclient.DownloadStringTaskAsync(uri);
         var game       = Newtonsoft.Json.JsonConvert.DeserializeObject <List <Game> >(await jsonResult)[0] as Game;
         GameCache.Add(id, game);
         return(game);
     }
     catch (Exception e)
     {
         throw;
     }
 }