好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

C#中DataTable 转换成 Json的方法

StringBuilder方法的全部代码:

using System;

using System.Text;

using System.Data;

 

public partial class Default2 : System.Web.UI.Page

{

    private string sasss;

    

    protected void Page_Load(object sender, EventArgs e)

    {

        DataTable table = getData();

        sasss = DataTableToJson(table);

 

        Response.Write(sasss + "<br/>");

 

    }

     

    public string DataTableToJson(DataTable table)

    {

        var JsonString = new StringBuilder();

        if (table.Rows.Count > 0)

        {

            JsonString.Append("[");

            for (int i = 0; i < table.Rows.Count; i++)

            {

                JsonString.Append("{");

                for (int j = 0; j < table.Columns.Count; j++)

                {

                    if (j < table.Columns.Count - 1)

                    {

                        JsonString.Append("\"" + table.Columns[j].ColumnName.ToString() + "\":" + "\"" + table.Rows[i][j].ToString() + "\",");

                    }

                    else if (j == table.Columns.Count - 1)

                    {

                        JsonString.Append("\"" + table.Columns[j].ColumnName.ToString() + "\":" + "\"" + table.Rows[i][j].ToString() + "\"");

                    }

                }

                if (i == table.Rows.Count - 1)

                {

                    JsonString.Append("}");

                }

                else

                {

                    JsonString.Append("},");

                }

            }

            JsonString.Append("]");

        }

        return JsonString.ToString();  

    }

 

    private DataTable getData()

    {

        DataTable dt = new DataTable();

        dt.Columns.Add("编号", typeof(Int32));

        dt.Columns.Add("姓名", typeof(string));

        dt.Columns.Add("性别", typeof(string));

        dt.Columns.Add("学历", typeof(string));

        dt.Rows.Add(1, "王超", "男", "本科");

        dt.Rows.Add(2, "周丽", "女", "专科");

        dt.Rows.Add(3, "李娟", "女", "专科");

        dt.Rows.Add(4, "杨明", "男", "硕士");

        dt.Rows.Add(5, "张德", "男", "本科");

        return dt;

    }

}

查看更多关于C#中DataTable 转换成 Json的方法的详细内容...

  阅读:2356次