1 #region 转换Table为JSON数据 2 /// <summary> 3 /// 转换Table为JSON数据 4 /// </summary> 5 /// <param name="dt"></param> 6 /// <returns></returns> 7 public static string TableToJson(DataTable dt) 8 { 9 StringBuilder sb = new StringBuilder("["); 10 foreach (DataRow row in dt.Rows) 11 { 12 if (!row.Equals(dt.Rows[0])) sb.Append(","); 13 sb.Append("{"); 14 foreach (DataColumn col in dt.Columns) 15 { 16 if (!col.Equals(dt.Columns[0])) sb.Append(","); 17 string value = GetText(row, col.ColumnName); 18 if (string.IsNullOrEmpty(value)) continue; //跳过为空的数据 19 sb.Append("\"").Append(col.ColumnName).Append("\":\"").Append(value).Append("\""); 20 } 21 sb.Append("}"); 22 } 23 sb.Append("]"); 24 return sb.ToString(); 25 } 26 /// <summary> 27 /// 从datable中读取文本 28 /// </summary> 29 /// <param name="row"></param> 30 /// <param name="col"></param> 31 /// <returns></returns> 32 private static string GetText(DataRow row, string col) 33 { 34 return row.IsNull(col) ? string.Empty : row[col].ToString(); 35 } 36 #endregion