[C#]从数据表中 c# 创建复杂的 json

发布时间: 2017/2/27 3:10:30
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我在我的数据集有 3 数据表。A 表具有一对多关系与 B 和 c。我想要在下面使用 Linq 在 c# 中创建像 Json。有人可以帮我吗?我想感谢事先向每个人将会引导我或提供我输入了我的问题。

{
    "A": [
        {
            "id": "0001",
            "type": "donut",
            "name": "Cake",
            "ppu": 0.55,
            "B": [
                {
                    "id": "1001",
                    "type": "Regular"
                }
            ],
            "C": [
                {
                    "id": "5001",
                    "type": "None"
                },
                {
                    "id": "5002",
                    "type": "Glazed"
                }
            ]
        }
    ],
    "A": [
        {
            "id": "0002",
            "type": "Cupcake",
            "name": "Cake",
            "ppu": 2.43,
            "B": [
                {
                    "id": "1001",
                    "type": "Regular"
                }
            ],
            "C": [
                {
                    "id": "5001",
                    "type": "None"
                },
                {
                    "id": "5002",
                    "type": "Glazed"
                }
            ]
        }
    ]
}

解决方法 1:

首先,您必须创建这些类,

public class Result
{
    public List<TableA> A { get; set; }
}
public class TableA
{
    public TableA()
    {
          B = new List<TableB>();
          C = new List<TableC>();
    }
    public string id { get; set; }
    public string type { get; set; }
    public string name { get; set; }
    public float ppu { get; set; }
    public virtual List<TableB> B { get; set; }
    public virtual List<TableC> C { get; set; }
}

public class TableB
{
    public string id { get; set; }
    public string type { get; set; }
}
public class TableC
{
    public string id { get; set; }
    public string type { get; set; }
}

之后,结果类结果对象中存储的值然后序列化使用 NewtonSoft 序列化程序,如下所述︰

Result result;
JsonConvert.SerializeObject(result); 
赞助商