18. (番外篇) 五分鐘實作C# 介接OpenData(政府行政機關辦公 ...
文章推薦指數: 80 %
今天主要講的是快速介接 政府資料開放平臺 上的 政府行政機關辦公日曆表 ... var url = "http://data.ntpc.gov.tw/api/v1/rest/datastore/382000000A-000077-002"; ...
2018iT邦幫忙鐵人賽
DAY
18
0
自我挑戰組
半路出家的工程師重新認識JavaScript系列第
18篇
18.(番外篇)五分鐘實作C#介接OpenData(政府行政機關辦公日曆表)
2018鐵人賽
awws
團隊2018新年快樂
2018-01-0521:06:099370瀏覽
前言
今天主要講的是快速介接政府資料開放平臺上的政府行政機關辦公日曆表
緣由是最近實作一個小型的工作行事曆
主要是讓客戶可以送件時,可以計算交件期限
邏輯蠻簡單的,從送件日根據案件等級往後推N個工作天即是
所以我們需要幾個資訊
送件日期
案件等級
判別工作日與例假日
工作日與例假日的部分,希望每年都可以匯入人事行政處公布的辦公日曆表
之後若遇颱風或其他不可抗拒因素彈性放假時,也要有地方可以手動調整
那我們就開始先接資料吧
先找到資料來源
先到政府行政機關辦公日曆表點選JSON檢視資料
複製資料網址
將網址貼到Chrome上就可以看到要接收的資料了
發送Httprequest&接收response
我們要先建立一個WebRequest
varurl="http://data.ntpc.gov.tw/api/v1/rest/datastore/382000000A-000077-002";
varrequest=WebRequest.Create(url);
//透過Chrome開發者工具可以取得Method,ContentType
request.Method="GET";
request.ContentType="application/json;charset=UTF-8";
取得request的responsestream
varresponse=request.GetResponse()asHttpWebResponse;
varresponseStream=response.GetResponseStream();
varreader=newStreamReader(responseStreaEncoding.GetEncoding("utf-8"));
varsrcString=reader.ReadToEnd();
srcString就是我們要的資料了
建立JSON格式對應的class
感謝Visualstudio提供強大的貼上JSON做為類別功能
先複製在Chrome貼上資料來源後,畫面中的JSON資料
建立一個class
編輯(E)=>選擇性貼上(S)=>貼上JSON做為類別(J)
將剛剛的responsestring轉為class吧
我利用Newtonsoft提供的轉型方法
varjsonData=Newtonsoft.Json.JsonConvert.DeserializeObject
標記
{{result.label}}
{{result.account}}
關閉
延伸文章資訊
- 1政府行政機關辦公日曆表 - 政府資料開放平臺
json https://data.ntpc.gov.tw/api/v1/rest/datastore/382000000A-000077-002 壞掉了... 發表回應前,請先登入.
- 218. (番外篇) 五分鐘實作C# 介接OpenData(政府行政機關辦公 ...
今天主要講的是快速介接 政府資料開放平臺 上的 政府行政機關辦公日曆表 ... var url = "http://data.ntpc.gov.tw/api/v1/rest/datastore/...
- 3行政機關辦公日曆表api - 職涯貼文懶人包
2021年9月7日· "110年中華民國政府行政機關辦公日曆表_Google行事曆專用.csv"資料有誤10/9 不是國慶日12/31 不是例假日... Re: 您好請問Json 有提供公開AP...
- 4資料預覽| 政府行政機關辦公日曆表 - 新北市政府資料開放平臺
日期, 節日或紀念日名稱, 是否放假, 放假類別, 說明. 2022/4/3, 是, 星期六、星期日. 2022/4/4, 兒童節, 是, 放假之紀念日及節日, 全國各機關學校放假一日。
- 5政府行政機關辦公日曆表api - 輕鬆健身去
政府行政機關辦公日曆表| 政府資料開放平臺政府行政機關辦公日曆表。 ... json https://data.ntpc.gov.tw/api/v1/rest/datastore/ 382000...