private static void ShowRoadStatus(RoadStatusApiModel roadStatusApi, string input) { if (roadStatusApi.StatusCode == 0) { Console.WriteLine($"The Status of the {roadStatusApi.RoadStatus[0].displayName} is as follows\r\n Road Status is {roadStatusApi.RoadStatus[0].statusSeverity}\r\n" + $"Road Status Description {roadStatusApi.RoadStatus[0].statusSeverityDescription}"); } else { Console.WriteLine($"{input.First().ToString().ToUpper()}{input.Substring(1)} is not a valid road"); } }
/// <summary> /// /// </summary> /// <param name="input">the road id</param> /// <returns>RoadStatusApiModel</returns> public async Task <RoadStatusApiModel> GetRoadStatusDetail(string input) { try { RoadStatusApiModel result = new RoadStatusApiModel(); var url = string.Format("{0}{1}?app_id={2}&app_key={3}", _httpClient.BaseAddress.ToString(), input, _appSettings.Value.ApiId, _appSettings.Value.ApiKey); var request = new HttpRequestMessage(HttpMethod.Get, url); var response = await _httpClient.GetAsync(request.RequestUri); if (response.IsSuccessStatusCode) { string content = await response.Content.ReadAsStringAsync(); var apiResult = JsonConvert.DeserializeObject <IEnumerable <RoadStatusDetailApiModel> >(content); result.RoadStatus = apiResult.ToArray(); result.StatusCode = 0; } else { result.RoadStatus = null; result.StatusCode = 1; } return(result); } catch (Exception ex) { throw new HttpRequestException("Error: Expected Error occured.", ex); } }