參考網址:http://www.cnblogs.com/shenshi/archive/2009/05/19/1460466.html
1。添加系統引用
//添加引用VS2005中添加System.Web.Extensions.dll的引用
using System.Web;
using System.Web.Script.Serialization;
using System.Data;
using System.Collections;
2.詳細代碼
/// <summary>
/// JSONHelper 的摘要說明
/// </summary>
public class JSONHelper
{
//對應JSON的singleInfo成員
public string singleInfo = string.Empty;
protected string _error = string.Empty;
protected bool _success = true;
protected long _totalCount = 0;
protected System.Collections.ArrayList arrData = new ArrayList();
protected System.Collections.ArrayList arrDataItem = new ArrayList();
public JSONHelper()
{
}
//對應於JSON的success成員
public bool success
{
get
{
return _success;
}
set
{
//如設定為true則清空error
if (success) _error = string.Empty;
_success = value;
}
}
//對應於JSON的error成員
public string error
{
get
{
return _error;
}
set
{
//如設定error,則自動化佈建success為false
if (value != "") _success = false;
_error = value;
}
}
public long totlalCount
{
get { return _totalCount; }
set { _totalCount = value; }
}
//重設,每次新產生一個json對象時必須執行該方法
public void Reset()
{
_success = true;
_error = string.Empty;
singleInfo = string.Empty;
arrData.Clear();
arrDataItem.Clear();
}
public void AddItem(string name, string value)
{
arrData.Add("/"" + name + "/":" + "/"" + value + "/"");
}
public void ItemOk()
{
arrData.Add("<BR>");
totlalCount++;
}
//序列化JSON對象,得到返回的JSON代碼
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("{");
sb.Append("totalCount:" + totlalCount.ToString() + ",");
sb.Append("success:" + _success.ToString().ToLower() + ",");
sb.Append("error:/"" + _error.Replace("/"", "///"") + "/",");
sb.Append("singleInfo:/"" + singleInfo.Replace("/"", "///"") + "/",");
sb.Append("data:[");
int index = 0;
sb.Append("{");
if (arrData.Count <= 0)
{
sb.Append("}]");
}
else
{
foreach (string val in arrData)
{
index++;
if (val != "<BR>")
{
sb.Append(val + ",");
}
else
{
sb = sb.Replace(",", "", sb.Length - 1, 1);
sb.Append("},");
if (index < arrData.Count)
{
sb.Append("{");
}
}
}
sb = sb.Replace(",", "", sb.Length - 1, 1);
sb.Append("]");
}
sb.Append("}");
return sb.ToString();
}
}