DataTableConvertJson.cs 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Data;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Web;
  7. /// <summary>
  8. /// GetClassTypeJosn 的摘要说明
  9. /// </summary>
  10. public class DataTableConvertJson
  11. {
  12. #region dataTable转换成Json格式
  13. /// <summary>
  14. /// dataTable转换成Json格式
  15. /// </summary>
  16. /// <param name="dt"></param>
  17. /// <returns></returns>
  18. public static string DataTable2Json2(DataTable dt)
  19. {
  20. StringBuilder jsonBuilder = new StringBuilder();
  21. jsonBuilder.Append("[");
  22. jsonBuilder.Append(dt.TableName);
  23. jsonBuilder.Append("{");
  24. for (int i = 0; i < dt.Rows.Count; i++)
  25. {
  26. jsonBuilder.Append("[");
  27. jsonBuilder.Append(dt.TableName);
  28. jsonBuilder.Append("{");
  29. for (int j = 0; j < dt.Columns.Count; j++)
  30. {
  31. jsonBuilder.Append("\"");
  32. jsonBuilder.Append(dt.Columns[j].ColumnName);
  33. jsonBuilder.Append("\":\"");
  34. jsonBuilder.Append(dt.Rows[i][j].ToString());
  35. jsonBuilder.Append("\",");
  36. }
  37. jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
  38. jsonBuilder.Append("},");
  39. }
  40. jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
  41. jsonBuilder.Append("]");
  42. return jsonBuilder.ToString();
  43. }
  44. #endregion dataTable转换成Json格式
  45. #region DataSet转换成Json格式
  46. /// <summary>
  47. /// DataSet转换成Json格式
  48. /// </summary>
  49. /// <param name="ds">DataSet</param>
  50. /// <returns></returns>
  51. public static string Dataset2Json(DataSet ds)
  52. {
  53. StringBuilder json = new StringBuilder();
  54. foreach (DataTable dt in ds.Tables)
  55. {
  56. json.Append("{\"");
  57. json.Append(dt.TableName);
  58. json.Append("\":");
  59. json.Append(DataTable2Json2(dt));
  60. json.Append("}");
  61. } return json.ToString();
  62. }
  63. #endregion
  64. /// <summary>
  65. /// Msdn
  66. /// </summary>
  67. /// <param name="jsonName"></param>
  68. /// <param name="dt"></param>
  69. /// <returns></returns>
  70. public static string DataTableToJson(string jsonName, DataTable dt)
  71. {
  72. StringBuilder Json = new StringBuilder();
  73. Json.Append("{\"" + jsonName + "\":[");
  74. if (dt.Rows.Count > 0)
  75. {
  76. for (int i = 0; i < dt.Rows.Count; i++)
  77. {
  78. Json.Append("{");
  79. for (int j = 0; j < dt.Columns.Count; j++)
  80. {
  81. Json.Append("\"" + dt.Columns[j].ColumnName.ToString() + "\":\"" + dt.Rows[i][j].ToString() + "\"");
  82. if (j < dt.Columns.Count - 1)
  83. {
  84. Json.Append(",");
  85. }
  86. }
  87. Json.Append("}");
  88. if (i < dt.Rows.Count - 1)
  89. {
  90. Json.Append(",");
  91. }
  92. }
  93. }
  94. Json.Append("]}");
  95. return Json.ToString();
  96. }
  97. }