private void button8_Click(object sender, EventArgs e) { string teststr = "{\"errno\":0,\"data\":{\"update_at\":\"2017-07-08 16:50:33\",\"id\":\"ds_test\",\"create_time\":\"Date(2017-07-07 11:32:52)\",\"current_value\":\"2A3931303332237872667A6E73706A2373616D706C652A20\"},\"error\":\"succ\"}"; RetInfo result = JsonManager.JsonToObject(teststr, typeof(RetInfo)) as RetInfo; if (result != null && result.data != null) { ConsoleLog.Instance.writeInformationLog("" + result.data.current_value); } else { ConsoleLog.Instance.writeInformationLog("返回字符串为" + teststr + ";序列化失败!"); } }
// public bool bStart; private void button7_Click(object sender, EventArgs e) { //string teststr = "{\"errno\": 0,\"error\":\"succ\",\"data\":"+ // "{[\"id\":\"temperature\",\"tags\":[\"Tag1\",\"Tag2\"],\"unit\":\"celsius\"," // +"\"unit_symbol\":\"C\",\"create_time\":\"2017-07-11 10:22:22\","+ // "\"current_value\":\"1234\",\"update_at\":\"2017-07-08 10:33:38\"],[\"id\":\"humi\",\"tags\"" // +":[\"Tag1\",\"Tag2\"],\"unit_symbol\":\"%\",\"create_time\":" // + "\"2017-07-10 10:22:22\",\"current_value\":\"456\",\"update_at\":\"2017-07-08 10:33:38\"]}}"; string teststr2 = "{\"errno\": 0,\"error\":\"succ\",\"data\":[{\"id\":\"temperature\",\"tags\":[\"Tag1\",\"Tag2\"],\"unit\":\"celsius\",\"unit_symbol\":\"C\",\"create_time\":\"2017-07-11 10:22:22\",\"current_value\":\"1234\",\"update_at\":\"2017-07-08 10:33:38\"},{\"id\":\"humi\",\"tags\":[\"Tag1\",\"Tag2\"],\"unit_symbol\":\"%\",\"create_time\":\"2017-07-10 10:22:22\",\"current_value\":\"456\",\"update_at\":\"2017-07-08 10:33:38\"}]}"; RetInfo2 result = JsonManager.JsonToObject(teststr2, typeof(RetInfo2)) as RetInfo2; if (result.retlist != null) { for (int i = 0; i < result.retlist.Count; i++) { retdata data = result.retlist[i]; ConsoleLog.Instance.writeInformationLog( string.Format("id={0};update_at={1};create_time={2}; current_value={3}", data.id, data.update_at, data.create_time, data.current_value)); } } }
// 9378306,ds_test,"8WR7HZu6SMuThybMFOlBYyKVjFA=" public RetState GetPointCurrentValue(string device_id, string datastream_id, string api_key, ref RetInfo retvalue) { RetState state = new RetState(); HttpClient2 client = new HttpClient2(); // string query_URL = "http://api.heclouds.com/dtu/parser"; string queryURL = string.Format("http://api.heclouds.com/devices/{0}/datastreams/{1}", device_id, datastream_id); client.AddRequestHeader("api-key", api_key); string retstr = ""; try { retstr = client.DownloadString(queryURL, string.Empty); } catch (Exception ex) { retstr = string.Format("从平台获取数据时发生异常,ErrorMsg={0};StackTrace={1}", ex.Message, ex.StackTrace); state.StateInfo = retstr; return(state); } RetInfo result = JsonManager.JsonToObject(retstr, typeof(RetInfo)) as RetInfo; if (result != null && result.data != null) { state.success = true; retvalue = result; // ConsoleLog.Instance.writeInformationLog("" + result.data.current_value); } else { string value = "返回字符串为" + retstr + ";序列化失败!"; state.StateInfo = value; // ConsoleLog.Instance.writeInformationLog(); } return(state); }