/// <summary> /// Retrieves the list of world regions /// </summary> /// <returns>RegionsResponse as defined by IUCN API V3</returns> public async Task <RegionsResponse> GetRegionsAsync() { RegionsResponse regions = null; HttpResponseMessage response = await mClient.GetAsync(Uri.EscapeUriString(string.Format(IucnRedListApiV3UriFormats.Regions, cToken))); if (response.IsSuccessStatusCode) { regions = await response.Content.ReadAsAsync <RegionsResponse>(); } return(regions); }
public static List <Regions> GetRayons(int regionId) { var url = String.Format("{0}/api/v1/refs/regions/{1}/rayons", Setting.ApiUrl, regionId); var response = SendDataNotAsync(url, Method.GET); RegionsResponse regionsResponse = new RegionsResponse(); if (response.StatusCode == HttpStatusCode.OK) { regionsResponse = DeserializeObject <RegionsResponse>(response.Content); } return(regionsResponse.Data); }
static void Main(string[] args) { using (IucnRedListApiV3Client client = new IucnRedListApiV3Client()) { RegionsResponse regions = client.GetRegionsAsync().Result; if (regions == null) { Console.WriteLine("Error ocurred loading the list of regions"); Console.ReadKey(); return; } Console.WriteLine("Regions:"); for (int i = 0; i < regions.Results.Count; i++) { Console.WriteLine(string.Format("{0} {1}", i, regions.Results[i].Name)); } Console.WriteLine(); Console.WriteLine("Enter number of region"); string selection = Console.ReadLine(); int regionNr; if (!int.TryParse(selection, out regionNr) || regionNr < 0 || regionNr >= regions.Results.Count) { Console.WriteLine("Invalid region number"); Console.ReadKey(); return; } string region = regions.Results[regionNr].Identifier; SpeciesResponse species = client.GetSpeciesRegionalAssesmentsAsync(region, 0).Result; if (species == null) { Console.WriteLine("Error ocurred loading the list of species"); Console.ReadKey(); return; } List <Species> criticallyEndangered = species.Result.Where(s => s.Category == cCriticallyEndangered).ToList(); Console.WriteLine(); Console.WriteLine("Critically endangered species:"); FetchMeasuresAndPrintSpeciesDetails(criticallyEndangered, region, client); Console.WriteLine(); List <Species> mammals = species.Result.Where(s => s.ClassName == cMammals).ToList(); Console.WriteLine(); Console.WriteLine("Mammals:"); FetchMeasuresAndPrintSpeciesDetails(mammals, region, client); Console.WriteLine(); } Console.WriteLine("Press any key to quit"); Console.ReadKey(); }