asp.net 編寫的 JSONHelper 類

來源:互聯網
上載者:User

public class JSONHelper<br />{<br /> //對應JSON的singleInfo成員<br /> public string singleInfo = string.Empty;</p><p> protected string _error = string.Empty;<br /> protected bool _success = true;<br /> protected long _totalCount = 0;<br /> protected System.Collections.ArrayList arrData = new ArrayList();<br /> protected System.Collections.ArrayList arrDataItem = new ArrayList();</p><p>public JSONHelper()<br />{<br />//<br />//TODO: 在此處添加建構函式邏輯<br />//<br />}</p><p> //對應於JSON的success成員<br /> public bool success<br /> {<br /> get<br /> {<br /> return _success;<br /> }<br /> set<br /> {<br /> //如設定為true則清空error<br /> if (success) _error = string.Empty;<br /> _success = value;<br /> }<br /> }</p><p> //對應於JSON的error成員<br /> public string error<br /> {<br /> get<br /> {<br /> return _error;<br /> }<br /> set<br /> {<br /> //如設定error,則自動化佈建success為false<br /> if (value != "") _success = false;<br /> _error = value;<br /> }<br /> }</p><p> public long totlalCount<br /> {<br /> get { return _totalCount; }<br /> set { _totalCount = value; }<br /> }</p><p> //重設,每次新產生一個json對象時必須執行該方法<br /> public void Reset()<br /> {<br /> _success = true;<br /> _error = string.Empty;<br /> singleInfo = string.Empty;<br /> arrData.Clear();<br /> arrDataItem.Clear();<br /> }</p><p> public void AddItem(string name, string value)<br /> {<br /> arrData.Add("/"" + name + "/":" + "/"" + value + "/"");<br /> }</p><p> public void ItemOk()<br /> {<br /> arrData.Add("<BR>");<br /> //返回總記錄條數<br /> totlalCount++;<br /> }</p><p> //序列化JSON對象,得到返回的JSON代碼<br /> public override string ToString()<br /> {<br /> StringBuilder sb = new StringBuilder();<br /> sb.Append("{");<br /> sb.Append("/"totalCount/":/"" + _totalCount.ToString() + "/",");<br /> sb.Append("/"success/":" + _success.ToString().ToLower() + ",");<br /> sb.Append("/"error/":/"" + _error.Replace("/"", "///"") + "/",");<br /> sb.Append("/"data/":[");</p><p> int index = 0;<br /> sb.Append("{");<br /> if (arrData.Count <= 0)<br /> {<br /> sb.Append("}");<br /> }<br /> else<br /> {<br /> foreach (string val in arrData)<br /> {<br /> index++;</p><p> if (val != "<BR>")<br /> {<br /> sb.Append(val + ",");<br /> }<br /> else<br /> {<br /> sb = sb.Replace(",", "", sb.Length - 1, 1);<br /> sb.Append("},");<br /> if (index < arrData.Count)<br /> {<br /> sb.Append("{");<br /> }<br /> }</p><p> }<br /> sb = sb.Replace(",", "", sb.Length - 1, 1);<br /> sb.Append("]");<br /> }</p><p> sb.Append("}");<br /> return sb.ToString();<br /> }</p><p> public string ToSingleString()<br /> {<br /> StringBuilder sb = new StringBuilder();<br /> sb.Append("{");</p><p> sb.Append("success:" + _success.ToString().ToLower() + ",");</p><p> sb.Append("data:");</p><p> int index = 0;<br /> sb.Append("{");<br /> if (arrData.Count <= 0)<br /> {<br /> sb.Append("}");<br /> }<br /> else<br /> {<br /> foreach (string val in arrData)<br /> {<br /> index++;</p><p> if (val != "<BR>")<br /> {<br /> sb.Append(val + ",");<br /> }<br /> else<br /> {<br /> sb = sb.Replace(",", "", sb.Length - 1, 1);<br /> sb.Append("},");<br /> if (index < arrData.Count)<br /> {<br /> sb.Append("{");<br /> }<br /> }</p><p> }<br /> sb = sb.Replace(",", "", sb.Length - 1, 1);<br /> sb.Append("");<br /> }</p><p> sb.Append("}");<br /> return sb.ToString();<br /> }<br />}

 

調用方法:

JSONHelper json = new JSONHelper();</p><p>json.success = true;</p><p>json.AddItem("aid", "1");</p><p>json.ItemOk();</p><p>json.totlalCount=10;</p><p>string jsons = "";<br />if (json.totlalCount > 0)<br />{<br /> jsons = json.ToString();<br />}<br />else<br />{<br /> jsons = @"{success:false}";<br />}<br />return jsons;

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.