欢迎大家进QQ群来讨论:84479667方法如下:public static string nulldata = "{\"result\":\"true\",\"msg\":\"没有相关数据\"}";#region 查询结果转为json
///
///查询结果转为json///
///
///
///
public static string GetDataToJSON(DataTable dt, int count = 0)
{
JavaScriptSerializer jss= newJavaScriptSerializer();
System.Collections.ArrayList dic= newSystem.Collections.ArrayList();if (dt != null && dt.Rows.Count > 0)
{if (count == 0)
{
count=dt.Rows.Count;
}foreach (DataRow dr indt.Rows)
{
System.Collections.Generic.Dictionary drow = new System.Collections.Generic.Dictionary();foreach (DataColumn dc indt.Columns)
{//string dcvalue = Common.PageBase.delhtml(dr[dc.ColumnName].ToString());
drow.Add(dc.ColumnName, dr[dc.ColumnName]);
}
dic.Add(drow);
}//bool result = true;
string JsonString =jss.Serialize(dic);string p = @"\\/Date\((\d+)\)\\/";
MatchEvaluator matchEvaluator= newMatchEvaluator(ConvertJsonDateToDateString);//MatchEvaluator img_urlEvaluator = new MatchEvaluator(GetImgUrl);
Regex reg = newRegex(p);//Regex img_url = new Regex("src=\\\\\"(.*?)\"");//Regex img_url = new Regex("src=\"(.*?)\"");
JsonString =reg.Replace(JsonString, matchEvaluator);//JsonString = img_url.Replace(JsonString, img_urlEvaluator);
return "{\"result\": \"true\"" + "," + "\"rows\":" + count + "," + "\"msg\":" + JsonString + "}";
}else{returnnulldata;
}
}#endregion
///
///将Json序列化的时间由/Date(1294499956278+0800)转为字符串///
///
///
private static stringConvertJsonDateToDateString(Match m)
{string result = string.Empty;
DateTime dt= new DateTime(1970, 1, 1);
dt= dt.AddMilliseconds(long.Parse(m.Groups[1].Value));
dt=dt.ToLocalTime();
result= dt.ToString("yyyy-MM-dd HH:mm:ss");returnresult;
}public string CreateJsonParameters(DataTable dt, int count = 0)
{if (dt == null || dt.Rows.Count == 0)
{returnnulldata;
}if (count == 0)
{
count=dt.Rows.Count;
}bool result = true;
StringBuilder JsonString= newStringBuilder();//Exception Handling
if (dt != null && dt.Rows.Count > 0)
{
JsonString.Append("{");
JsonString.Append("\"result\":" + result + "," + "rows:" + count + "," + "msg:[");for (int i = 0; i < dt.Rows.Count; i++)
{
JsonString.Append("{");for (int j = 0; j < dt.Columns.Count; j++)
{if (j < dt.Columns.Count - 1)
{
JsonString.Append("\"" + dt.Columns[j].ColumnName.ToString() + "\":" + "\"" + dt.Rows[i][j].ToString() + "\",");
}else if (j == dt.Columns.Count - 1)
{
JsonString.Append("\"" + dt.Columns[j].ColumnName.ToString() + "\":" + "\"" + dt.Rows[i][j].ToString() + "\"");
}
}/*end Of String*/
if (i == dt.Rows.Count - 1)
{
JsonString.Append("}");
}else{
JsonString.Append("},");
}
}
JsonString.Append("]}");returnJsonString.ToString();
}else{return null;
}
}