public IObservable <Record[]> GetStationData(DateTime startDate, DateTime endDate, string stationCode, RecordType parameter) { // Convert Enum to Text string param = parameter switch { RecordType.PM25 => "PM2.5", _ => Enum.GetName(typeof(RecordType), parameter) }; var dto = new GetDataDto { StationId = stationCode, ParamValue = param, StartDate = startDate, EndDate = endDate }; var payload = dto.GenerateFormUrlEncodedContent(); return(Observable.FromAsync(cts => _client.PostAsync(new Uri("http://aqmthai.com/includes/getMultiManReport.php"), payload, cts)) .Select(async r => await r.Content.ReadAsStringAsync()) .Switch().Select(XmlParser.ParseData).Select(records => { foreach (var record in records) { record.Type = parameter; } return records; })); } }
public Dictionary <string, object> GetData([FromBody] GetDataDto request) { ServiceClient proxy = new WcfService.Clients.ServiceClient(); Guid productID = Guid.NewGuid(); var respose = proxy.GetData(1); // https://www.codemag.com/article/0809101/WCF-the-Manual-Way%E2%80%A6-the-Right-Way return(new Dictionary <string, object> { { "Result", respose } }); }