/// <summary> /// Get the data values for the specific site, variable and time range as a list of Series objects /// </summary> /// <param name="siteCode">the full site code (networkPrefix:siteCode)</param> /// <param name="variableCode">the full variable code (vocabularyPrefix:variableCode)</param> /// <param name="startTime">the start date/time</param> /// <param name="endTime">the end date/time</param> /// <returns>The data series. Each data series object includes a list of data values, /// site, variable, method, source and quality control level information.</returns> /// <remarks>Usually the list of Series returned will only contain one series. However in some /// cases, it will contain two or more series with the same site code and variable code, but /// with a different method or quality control level</remarks> public IList <Series> GetValues(string siteCode, string variableCode, DateTime startTime, DateTime endTime) { IList <Series> result; if (SaveXmlFiles) { var xmlFile = GetValuesXML(siteCode, variableCode, startTime, endTime); using (var fileStream = new FileStream(xmlFile, FileMode.Open)) { result = _parser.ParseGetValues(fileStream); } } else { var req = WebServiceHelper.CreateGetValuesRequest(_serviceURL, siteCode, variableCode, startTime, endTime); req.Timeout = _reqTimeOut * 1000; using (var resp = (HttpWebResponse)req.GetResponse()) { using (var stream = resp.GetResponseStream()) { result = _parser.ParseGetValues(stream); } } } return(result); }
private string GetAndSavesValuesXML(string siteCode, string variableCode, DateTime startTime, DateTime endTime) { HttpWebRequest req = WebServiceHelper.CreateGetValuesRequest(_asmxURL, siteCode, variableCode, startTime, endTime); string filename = GenerateGetValuesFileName(siteCode, variableCode); SaveWebResponseToFile(req, filename); return(filename); }
private string GetAndSavesValuesXML(string siteCode, string variableCode, DateTime startTime, DateTime endTime) { var req = WebServiceHelper.CreateGetValuesRequest(_serviceURL, siteCode, variableCode, startTime, endTime); req.Timeout = _reqTimeOut * 1000; var filename = GenerateGetValuesFileName(siteCode, variableCode); SaveWebResponseToFile(req, filename); return(filename); }