javascript - 将多个 DataTable 序列化为 JSON

标签 javascript c# asp.net json datatable

我想将两个 DataTables 序列化为 JSON,但我做不到。我查看了示例,但无法解决问题。 请帮助我。

我的数据表:

    SqlDataAdapter adp1 = new SqlDataAdapter("select * from table1", con);
    SqlDataAdapter adp2 = new SqlDataAdapter("select * from table2", con);

    DataTable dt1 = new DataTable();
    DataTable dt2 = new DataTable();

    adp1.Fill(dt1);
    adp2.Fill(dt2);

我想得到这个结果:

var Json_Array = {
        "DataTable1":
            [
                {
                    "Id": "1",
                    "Name": "John"                       
                },
                {
                    "Id": "2",
                    "Name": "Mike"                        
                }
            ],
        "DataTable2":
            [
                {
                    "Mark": "Opel",
                    "Year": "1998"
                },
                {
                    "Mark": "Renault",
                    "Year": "2016"
                }
            ]
    };

最佳答案

只需将您的 DataTables 添加到匿名对象并使用 Json.Net 对其进行序列化:

var data = new
{
    DataTable1 = dt1,
    DataTable2 = dt2
};

string json = JsonConvert.SerializeObject(data, Formatting.Indented);

fiddle :https://dotnetfiddle.net/ytKJnO

关于javascript - 将多个 DataTable 序列化为 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33190083/

相关文章:

c# - 如何使用 Entity Framework 4.1 Code First 为数据库中的一对多关系强制建立一对一关系

C# 断点命中调试器

c# - Web 方法中的默认 ASP.NET DateTime.Kind 为 UTC

c# - 将列表存储到 session

javascript - 为什么我无法从另一个组件访问 vue.js 属性?

java - 如何使用 Spring/DWR 编码 javax.xml.datatype.Duration Java <--> JS

javascript - 在 asp.net 中使用 javascript 函数禁用按钮

javascript - 单击时更改行颜色 - ASP.NET 和 JavaScript

javascript - 我怎样才能得到这个滚动的数量? (主要/部分)

javascript - d3.js 组条形图不起作用