JSON.NET:如何将现有JSON插入到另一个中间?

时间:2013-09-04 14:24:32

标签: .net json.net

有没有简单的方法将现有的JSON文件插入到另一个中间?

我见过其他人问过如何合并它们但是我认为我的问题很独特,我似乎无法找到任何信息。

修改

这是第一个JSON。

{
   Name: "test1",
   Items: {
       Name: "test1items"
   }
}

我需要在第一个json上插入第二个JSON(它是有效的json)到一个名为“data”的新属性,你看不到它的数据属性,因为它不存在,它在Items下面。像这样

{
   Name: "test1",
   Items: {
       Name: "test1items",
       Data: ........
   }
}

所以我的想法是在第一个json上使用某种类型的reader并找到Items.Name并添加一个新属性“Data”并合并到第二个JSON中。

我没有包含第二个JSON,因为它真的不重要,它是一个有效的json字符串。

我拥有所有字符串,所以我可以解析它们等等吗?

1 个答案:

答案 0 :(得分:4)

string json1 = @"
    {
        Name: ""test1"",
        Items: {
            Name: ""test1items""
        }
    }";
string json2 = @"
    {
        ""SomeField"": ""SomeData""
    }";

var obj1 = JObject.Parse(json1);
var obj2 = JObject.Parse(json2);


obj1["Items"]["Data"] = obj2;

var newJson = obj1.ToString();

输出:

{
  "Name": "test1",
  "Items": {
    "Name": "test1items",
    "Data": {
      "SomeField": "SomeData"
    }
  }
}