private async Task displayAPIInfo(Characters c) { MarvelCharacter marvelCharacter = await App.MDM.GetCharacterByID(c.MarvelAPIID); mainLabel.Text = "You are " + marvelCharacter.Name; mainDesc.Text = marvelCharacter.Description; }
public async Task <MarvelCharacter> GetCharacterByID(int marvelID) { var ts = Guid.NewGuid().ToString(); Debug.WriteLine(ts); IHashService tempHash = _hashService; var hash = _hashService.CreateMd5Hash(ts + _API_PRIVATE_KEY + _API_PUBLIC_KEY); MarCharacter = new MarvelCharacter(); var uri = $@"https://gateway.marvel.com/v1/public/characters/{marvelID}?apikey={_API_PUBLIC_KEY}&hash={hash}&ts={ts}"; /* * try * { * * var response = await _client.GetAsync(uri); * Debug.WriteLine("XXXX: " + response.ToString()); * if (response.IsSuccessStatusCode) * { * var content = await response.Content.ReadAsStringAsync(); * Debug.WriteLine(content); * MarvelCharacter mc = JsonConvert.DeserializeObject<MarvelCharacter>(content); * Debug.WriteLine(mc); * MarCharacter = mc; * } * * } * catch (Exception ex) * { * Debug.WriteLine(@"\tERROR {0}", ex.Message); * } */ //var client = new HttpClient(); var response2 = await _client.GetStringAsync(uri); var responseObject = JObject.Parse(response2); List <MarvelCharacter> temp = (List <MarvelCharacter>) await Task.Factory.StartNew(() => JsonConvert.DeserializeObject <IEnumerable <MarvelCharacter> >(responseObject["data"]["results"].ToString())); Debug.WriteLine(temp.Count); return(temp[0]); }