public async Task <IActionResult> IndexAsync() { PokeApiResponse pokeApiResponse = null; using (var httpClient = new HttpClient()) { HttpResponseMessage result = await httpClient.GetAsync("https://pokeapi.co/api/v2/pokemon/?limit=151"); var responseBody = await result.Content.ReadAsStringAsync(); pokeApiResponse = JsonConvert.DeserializeObject <PokeApiResponse>(responseBody); } var dexListVM = new DexListViewModel { DexEntries = new List <DexEntry>() }; foreach (var entry in pokeApiResponse.Results) { dexListVM.DexEntries.Add(new DexEntry { Caught = false, Name = entry.Name }); } return(View(dexListVM)); }
public async Task <List <Pokemon> > GetAllPokemon() { List <Pokemon> listPokemon = new List <Pokemon>(); using (var httpClient = new HttpClient()) { using (var response = await httpClient.GetAsync(PokeApiEnum.GET_ALL_POKEMON)) { string apiResponse = await response.Content.ReadAsStringAsync(); PokeApiResponse <Pokemon> jsonResponse = JsonConvert.DeserializeObject <PokeApiResponse <Pokemon> >(apiResponse); listPokemon.AddRange(jsonResponse.Results); } } return(listPokemon); }