如何使用 Json.NET 将根节点添加到 C# 中的 JSON?

Fra*_*her 2 c# json json.net

我正在处理Visual Studio C#项目,我需要将 a 转换JSONXML. 我收到JSON字符串格式的。问题是,JSON如果JSON没有根节点,我需要在结构中有一个根节点,以便我可以转换为XML所需的格式。

假设我有这个JSON

{
        "id": 1,
        "name": {
            "first": "Yong",
            "last": "Mook Kim"
        },
        "contact": [{
            "type": "phone/home",
            "ref": "111-111-1234"
        }, {
            "type": "phone/work",
            "ref": "222-222-2222"
        }]
}
Run Code Online (Sandbox Code Playgroud)

我想像这样添加根节点JSON

{
    "user": {
        "id": 1,
        "name": {
            "first": "Yong",
            "last": "Mook Kim"
        },
        "contact": [{
            "type": "phone/home",
            "ref": "111-111-1234"
        }, {
            "type": "phone/work",
            "ref": "222-222-2222"
        }]
    }
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能用C#and做到这一点JSON.NET

And*_*rei 7

我想你有user对象。只需使用匿名类添加额外的根节点:

var obj = new { user = user };

string json = JsonConvert.SerializeObject(obj);
Run Code Online (Sandbox Code Playgroud)

生成的 JSON 将如下所示:

{
    "user": {.../your user object/...}
}
Run Code Online (Sandbox Code Playgroud)