
正文
把DataSet转换成JSON
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
/// <summary>
/// dataTable转换成Json格式
/// </summary>
/// <param name="dt"></param>
/// <returns></returns>
public static string DataTable2Json(System.Data.DataTable dt)
{
System.Text.StringBuilder jsonBuilder = new System.Text.StringBuilder();
jsonBuilder.Append("{\"Name\":\"" + dt.TableName + "\",\"Rows");
jsonBuilder.Append("\":[");
for (int i = ; i < dt.Rows.Count; i++)
{
jsonBuilder.Append("{");
for (int j = ; j < dt.Columns.Count; j++)
{
jsonBuilder.Append("\"");
jsonBuilder.Append(dt.Columns[j].ColumnName);
jsonBuilder.Append("\":\"");
jsonBuilder.Append(dt.Rows[i][j].ToString().Trim().Replace("\"", "\\\"").Replace("\n", "").Replace("\r", "")); //对于特殊字符,还应该进行特别的处理。
jsonBuilder.Append("\",");
}
jsonBuilder.Remove(jsonBuilder.Length - , );
jsonBuilder.Append("},");
}
jsonBuilder.Remove(jsonBuilder.Length - , );
jsonBuilder.Append("]");
jsonBuilder.Append("}");
return jsonBuilder.ToString();
}
/// <summary>
/// DataSet转换成Json格式
/// </summary>
/// <param name="ds">DataSet</param>
/// <returns></returns>
public static string Dataset2Json(System.Data.DataSet ds)
{
System.Text.StringBuilder json = new System.Text.StringBuilder();
json.Append("{\"Tables\":");
json.Append("[");
foreach (System.Data.DataTable dt in ds.Tables)
{
json.Append(DataTable2Json(dt));
json.Append(",");
}
json.Remove(json.Length - , );
json.Append("]");
json.Append("}");
return json.ToString();
} public bool IsReusable
{
get
{
return false;
}
}
把DataSet转换成JSON,记得把一些特殊字符处理下。
上面来源于网上的一段代码,因为没有处理换行和回车,所以转过去的JSON一直不通过。
这个方法暂时符合自己使用需求,等后续有什么特殊字符需要处理再进行添加
JSON在线解析:http://www.bejson.com/








