JSON 的数据转换格式(DataTable或DataSet)

这两天在使用JqueryEasyUI框架绑定数据并实现自动分页时,由于框架的限制需要使用Json数据的来传递与获取数据:

JSON的全称是JavaScript Object Notation, 是一种轻量级的数据交换格式。就像XML一样,,JSON也是一种比较常见的数据交换的语言,或者称之为数据交换格式更为贴切。2. JSON中的数据结构有下面两种:(1)对象(Object): 一系列name/value对的集合(2)数组(Array): 一系列有序的values的列表

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript(Standard ECMA-262 3rd Edition – December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。

  

今天先简单的介绍数据的转换:

public class DataTableConvertJson{#region dataTable转换成Json格式/// <summary>/// dataTable转换成Json格式/// </summary>/// <param name="dt"></param>/// <returns></returns>public static string DataTable2Json(DataTable dt){StringBuilder jsonBuilder = new StringBuilder();jsonBuilder.Append("{\&;");jsonBuilder.Append(dt.TableName);jsonBuilder.Append("\&;:[");jsonBuilder.Append("[");for (int i = 0; i < dt.Rows.Count; i++){jsonBuilder.Append("{");for (int j = 0; j < dt.Columns.Count; j++){jsonBuilder.Append("\&;");jsonBuilder.Append(dt.Columns[j].ColumnName);jsonBuilder.Append("\&;:\&;");jsonBuilder.Append(dt.Rows[i][j].ToString());jsonBuilder.Append("\&;,");}jsonBuilder.Remove(jsonBuilder.Length – 1, 1);jsonBuilder.Append("},");}jsonBuilder.Remove(jsonBuilder.Length – 1, 1);jsonBuilder.Append("]");jsonBuilder.Append("}");return jsonBuilder.ToString();}#endregion dataTable转换成Json格式#region DataSet转换成Json格式/// <summary>/// DataSet转换成Json格式/// </summary>/// <param name="ds">DataSet</param>/// <returns></returns>public static string Dataset2Json(DataSet ds){StringBuilder json = new StringBuilder();foreach (DataTable dt in ds.Tables){json.Append("{\&;");json.Append(dt.TableName);json.Append("\&;:");json.Append(DataTable2Json(dt));json.Append("}");} return json.ToString();}#endregion/// <summary>/// Msdn/// </summary>/// <param name="jsonName"></param>/// <param name="dt"></param>/// <returns></returns>public static string DataTableToJson(string jsonName, DataTable dt){StringBuilder Json = new StringBuilder();Json.Append("{\&;" + jsonName + "\&;:[");if (dt.Rows.Count > 0){for (int i = 0; i < dt.Rows.Count; i++){Json.Append("{");for (int j = 0; j < dt.Columns.Count; j++){Json.Append("\&;" + dt.Columns[j].ColumnName.ToString() + "\&;:\&;" + dt.Rows[i][j].ToString() + "\&;");if (j < dt.Columns.Count – 1){Json.Append(",");}}Json.Append("}");if (i < dt.Rows.Count – 1){Json.Append(",");}}}Json.Append("]}");return Json.ToString();}}

这样界面上接收到后台传的数据转换成JSON后,自动可以实现框架中的效果:

图1:

图2:

接下来的博客中给大家详细分享实现的过程,尽请期待!

可是,我却迈不开步伐,怎么也走不出那个圈……

JSON 的数据转换格式(DataTable或DataSet)

相关文章:

你感兴趣的文章:

标签云: