private List <ResponseDiagnosticRecordDto> GetData(DiagnosticDto model) { string url = model.Url; var pattern = Regex.Match(url, @"versionId=[\d+]"); if (pattern.Success) { url = url.Replace(pattern.Value, string.Format("versionId={0}", model.VersionId)); } HttpClient client = new HttpClient { BaseAddress = new Uri("https://212.8.234.87/") }; ServicePointManager.ServerCertificateValidationCallback = delegate { return(true); }; client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); Task <HttpResponseMessage> response = client.GetAsync(url); if (response.Result.IsSuccessStatusCode) { var stringResult = response.Result.Content.ReadAsStringAsync(); ResponseDiagnosticDto list = JsonConvert.DeserializeObject <ResponseDiagnosticDto>(stringResult.Result); if (list != null) { return(list.Data); } else { throw new Exception("Ряд не получен"); } } else { throw new Exception(response.Result.Content.ReadAsStringAsync().Result); } }
/// <summary> /// Метод получения набора данных через запрос к webAPI /// </summary> /// <param name="model"></param> /// <returns></returns> private List <APIData> GetData(InitSeriesDto model, string key = null) { string url = model.Url; var pattern = Regex.Match(url, @"versionId=[\d+]"); if (pattern.Success) { url = url.Replace(pattern.Value, string.Format("versionId={0}", model.VersionId)); } HttpClient client = new HttpClient { BaseAddress = new Uri("https://212.8.234.87/") }; ServicePointManager.ServerCertificateValidationCallback = delegate { return(true); }; client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); Task <HttpResponseMessage> response = client.GetAsync(url); if (response.Result.IsSuccessStatusCode) { if (!string.IsNullOrEmpty(key)) { var stringResult = response.Result.Content.ReadAsStringAsync(); ResponseDiagnosticDto list = JsonConvert.DeserializeObject <ResponseDiagnosticDto>(stringResult.Result); if (list != null) { var resList = list.Data.FirstOrDefault(x => x.Key == key).Values.Select(x => new APIData { timestamp = DateTime.Now, Value = x }).ToList(); return(resList); } else { throw new Exception("Ряд не получен"); } } else { var stringResult = response.Result.Content.ReadAsStringAsync(); ResponseForecastDto list = JsonConvert.DeserializeObject <ResponseForecastDto>(stringResult.Result); if (list != null) { return(list.Data); } else { throw new Exception("Ряд не получен"); } } } else { throw new Exception(response.Result.Content.ReadAsStringAsync().Result); } }