使用JSON.Net编写属性名称

11

我正在使用JSON.net在C#中编写一些JSON。我可以生成类似以下的JSON:

{
    "id": "234",
    "name": "abc"
}

我想要做的是获取这个

 {
    "DATA": {
        "id": "234",
        "name": "abc"
    }
}

这是我正在使用的json.net代码

    StringBuilder sb = new StringBuilder();
    StringWriter sw = new StringWriter(sb);
    JsonWriter jsonWriter = new JsonTextWriter(sw);
    jsonWriter.Formatting = Formatting.Indented;



        jsonWriter.WriteStartObject();                 
            jsonWriter.WritePropertyName("id");
            jsonWriter.WriteValue("234");
            jsonWriter.WritePropertyName("name");
            jsonWriter.WriteValue("abc");
        jsonWriter.WriteEndObject();

您能建议如何将“DATA”部分添加到其中吗?

1个回答

16

首先创建根对象,然后写入属性名"DATA",接着写入你刚刚创建的对象:

jsonWriter.WriteStartObject();
    jsonWriter.WritePropertyName("DATA");
    jsonWriter.WriteStartObject();
        jsonWriter.WritePropertyName("id");
        jsonWriter.WriteValue("234");
        jsonWriter.WritePropertyName("name");
        jsonWriter.WriteValue("abc");
    jsonWriter.WriteEndObject();
jsonWriter.WriteEndObject();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接