本文介绍了我该如何合并两个JObject?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个第一JSON:
{
数据: [{
ID:ID1,
场:字段1
}],
分页:{
$ P $光伏:链接1,
}
}
和第二个
{
数据: [{
ID:ID2,
场:场2
}],
分页:{
$ P $光伏:链接2,
}
}
和我想合并/联合这两个数据阵列,如:
{
数据: [{
ID:ID1,
场:字段1
},
{
ID:ID2,
场:场2
}]
}
(我不关心约页面
现在)。
我该怎么办呢快捷方便?这是我的尝试:
VAR最终= JsonConvert.SerializeObject(新{数据= json1 [数据。联盟(json2 [数据])},Newtonsoft.Json.Formatting.Indented)。的ToString();
但会抛出一个异常:Newtonsoft.Json.Linq.JArray'不包含'联盟'
解决方案
JArray dataOfJson1 = json1.SelectToken(数据);
JArray dataofJson2 = json2.SelectToken(数据);
的foreach(JObject的innerdata在dataofJson2)
{
dataOfJson1.Add(的innerdata);
}
I have a first json:
{
"data": [{
"id": "id1",
"field": "field1"
}],
"paging": {
"prev": "link1",
}
}
and a second one:
{
"data": [{
"id": "id2",
"field": "field2"
}],
"paging": {
"prev": "link2",
}
}
and I want to merge/union the two Data array, such as:
{
"data": [{
"id": "id1",
"field": "field1"
},
{
"id": "id2",
"field": "field2"
}]
}
(I don't care about about paging
right now).
How can I do it quick and easy? This is my try:
var final = JsonConvert.SerializeObject(new { data = json1["data"].Union(json2["data"]) }, Newtonsoft.Json.Formatting.Indented).ToString();
but an Exception is raised: 'Newtonsoft.Json.Linq.JArray' does not contains a definition of 'Union'
解决方案
JArray dataOfJson1=json1.SelectToken("data");
JArray dataofJson2=json2.SelectToken("data");
foreach(JObject innerData in dataofJson2)
{
dataOfJson1.Add(innerData);
}
这篇关于我该如何合并两个JObject?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!