/// <summary> /// GetWeatherDataFromRemoteService /// </summary> /// <param name="request"></param> /// <returns></returns> private List <WeatherForecast> GetWeatherDataFromRemoteService(RestRequest request) { //requestUrl = this.BaseUrl + requestUrl; HttpResponseMessage res = null; try { List <WeatherForecast> forecast = null; var response = restClient.Execute(request); if (response.StatusCode == HttpStatusCode.OK) { string rawResponse = response.Content; var parsedResponse = JObject.Parse(rawResponse); forecast = WeatherDeserializer.GetWeatherForecast(parsedResponse); //countries = new JsonDeserializer().Deserialize<List<Country>>(response); return(forecast); } else { throw new HttpRequestException("Invalid Response code, API didn't respond with status code 200."); } } catch (Exception e) { throw; } finally { if (res != null) { res.Dispose(); } } }
private string GetWeather(string latitude, string longtitude) { var url = "/weather?lat=" + latitude + "&lon=" + longtitude; var apiUrl = "http://api.openweathermap.org/data/2.5"; using (var client = new WebClient()) { Trace.WriteLine("<HTTP - GET - " + url + " >"); var response = client.DownloadString($"{apiUrl}{url}&appid={WEATHER_API_KEY}"); var parsedResponse = JObject.Parse(response); var item = WeatherDeserializer.GetWeatherCurrent(parsedResponse); return(item.Item.Title); } }