BellwetherTest.cs 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using Newtonsoft.Json;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Text.RegularExpressions;
  7. using System.Threading.Tasks;
  8. namespace ConsoleApp1.bellwether
  9. {
  10. internal class BellwetherTest
  11. {
  12. static void test3()
  13. {
  14. var url = "http://plm.bellwether-corp.com:8081/BW_Service.asmx/ExportSolarenergy_All_1";
  15. //RestClient client = new RestClient(url);
  16. //RestRequest restRequest = new RestRequest() { Method = Method.GET };
  17. //var requestResult = client.Execute(restRequest);
  18. //var gettask = client.GetStringAsync(url);
  19. //var result = gettask.Result;
  20. //var result = requestResult.Content;
  21. var result = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<string xmlns=\"http://tempuri.org\">{\"code\":200,\"status\":\"success\",\"data\":[{\"Area\":\"集團\",\"Unit\":\"年\",\"Energy\":\"865576\",\"CO2EmissionSaved\":\"419766\",\"EquivalentTreesPlanted\":\"15321447\"},{\"Area\":\"\",\"Unit\":\"日\",\"Energy\":\"1590\",\"CO2EmissionSaved\":\"784\",\"EquivalentTreesPlanted\":\"28607\"},{\"Area\":\"平鎮\",\"Unit\":\"日\",\"Energy\":\"842\",\"CO2EmissionSaved\":\"428\",\"EquivalentTreesPlanted\":\"15640\"},{\"Area\":\"昆山\",\"Unit\":\"日\",\"Energy\":\"748\",\"CO2EmissionSaved\":\"355\",\"EquivalentTreesPlanted\":\"12968\"},{\"Area\":\"越南\",\"Unit\":\"日\",\"Energy\":\"---\",\"CO2EmissionSaved\":\"---\",\"EquivalentTreesPlanted\":\"---\"},{\"Area\":\"美洲\",\"Unit\":\"日\",\"Energy\":\"---\",\"CO2EmissionSaved\":\"---\",\"EquivalentTreesPlanted\":\"---\"},{\"Area\":\"\",\"Unit\":\"\",\"Energy\":\"---\",\"CO2EmissionSaved\":\"---\",\"EquivalentTreesPlanted\":\"---\"}],\"message\":\"\"}</string>";
  22. //result = result.Replace('\n',' ').Replace('\r',' ');
  23. Regex regex = new Regex(".*\"data\":(\\[.*\\]).*");
  24. var matchResult = regex.Match(result);
  25. if (matchResult != null && matchResult.Success && matchResult.Groups.Count > 1)
  26. {
  27. result = matchResult.Groups[1].Value;
  28. }
  29. var solarEnergyModels = JsonConvert.DeserializeObject<SolarEnergyModel[]>(result);
  30. }
  31. class SolarEnergyModel
  32. {
  33. public string Area { get; set; }
  34. public string Energy { get; set; }
  35. public string CO2EmissionSaved { get; set; }
  36. public string EquivalentTreesPlanted { get; set; }
  37. }
  38. }
  39. }