這一篇文章世介接Json主要程式碼,也是把程式撰寫置index.aspx.cs裏 程式碼如下
在.cs可看到有主程式Page_Load,因為我們是寫介接程式,所以當該程式已啟動就會自動到
公開資料平台撈取資料;第二個為函式GetJsonContent,主要功能處理到資料平台網址包含request及respone的動作。
首先可看Page_Load的程式碼如下
將介接Json的網址存入變數content,並設定進入函式GetJsonContent,將目標網址字串
拋入函式GetJsonContent處理,在函式程式中會說明處理動作。
2. Data data = JsonConvert.DeserializeObject<Data>(content);
在前面文章有提到反序列化,也就是Json進入.Net中,所以程式碼解釋如下
content為目標網址的Json資料對應到Data類別的定義,並使用JsonConvert類別的方法為
DeserializeObjec(反序列進入.NET中),最後存放置data變數中。
3.message.InnerHtml += "<CAPTION><h1>高雄市政府相關求才資訊發佈</h1></CAPTION> ";
在這具語法中有看到message為前端span的Id也就是接回來的資料要放在span區塊中。
InnerHtml意思為傳輸的字元中若包含HTML語法,(.aspx)將會對該HTML語法產生作用。
+= 在程式中為簡寫語法 例如 a+=1 意思為 a=a+1,在示範看起來很簡單需要簡寫嗎?而對應本範例將變數名稱考慮進去就會方便很多。
接下來都是使用html語法,進行串接並不難理解,只是花點心思,語法解釋如下
< caption >< /caption >為表格外的上方標題
< table >< /table >包住所有的表格元素,如< tr >< th >< td >
< tr >< /tr >代表表格的一橫列,包住< th >或< td >
< th >< /th >代表表格內的上方欄位
< td >< /td >代表表格內的一格
4.接下來使用foreach將資料一行一行讀進來,宣告一個變數item作為計數使用,
而data.entries為之前定義對應Json的類別,item計數不超過json資料標題數量,
下面有一段判斷式為標題字元大於35時出現詳情,否則標題字元完整呈現,
為什麼要做此處理,因為標題的長度不 一若沒有做此判斷,整張表格會呈現很亂
這篇文章先講到Page_Load的說明,下一章講解函式GetJsonContent的程式作用
沒有留言:
張貼留言