日期:2014-05-16  浏览次数:20639 次

datatable 转 jquery-easyui 所对应的JSON格式 .net
请问如何在ASP.NET 后台中对得到的datatable 转换成 jquery-easyui 所对应的JSON格式。
我的数据表查询出来为 id,pid,title,linkurl,4个基本的。
不知道大侠们有没有datatable 转 jquery-easyui 所对应的JSON格式 的类。
需要ASP.NET 的

------解决方案--------------------
下面是一段输出json类型的类的代码,字段跟你的不对应,你自己可以看着改下:
==================================================================
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

/// <summary>
/// JsonClass 的摘要说明
/// </summary>
public class JsonClass
{
 public JsonClass(string info,string data,int sta)
 {
//
// TODO: 在此处添加构造函数逻辑
//
this.info = info;
this.data = data;
this.sta = sta;
 }
private string info;

public string Info
{
get { return info; }
set { info = value; }
}
private string data;

public string Data
{
get { return data; }
set { data = value; }
}
private int sta;

public int Sta
{
get { return sta; }
set { sta = value; }
}

//重写ToString()方法,以便输出格式是标准的JSON格式
public override string ToString()
{
return "{\"data\":\"" + data + "\",\"info\":\"" + info + "\",\"sta\":" + sta + "}"; 
}
}



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/y_h_t/archive/2009/11/17/4821262.aspx
------解决方案--------------------
C# code

/// <summary> DataTable二维表格转为符合json格式的字符串 </summary>
        /// <param name="tableSource">数据库查询结果</param>
        /// <param name="fields">需要添加进来的字段名</param>
        /// <returns></returns>
        public string DataTableToJson(DataTable tableSource, string[] fields)
        {
            string jsonData = "{'totalCount':" + tableSource.Rows.Count + ",'root':[";

            if (tableSource.Rows.Count > 0)
            {
                foreach (DataRow row in tableSource.Rows)
                {
                    jsonData += "{";
                    for (int i = 0; i < fields.Length; i++)
                        jsonData += "'" + fields[i] + "':'" + row[fields[i]] + "',";
                    jsonData = jsonData.Substring(0, jsonData.Length - 1);
                    jsonData += "},";
                }
                jsonData = jsonData.Substring(0, jsonData.Length - 1);
                jsonData += "]}";
            }
            else
            {
                jsonData += "]}";
            }

            return jsonData;
        }

------解决方案--------------------
探讨

不是这样的。我说的是适应 jquery-easyui tree 插件格式的JSON