実行した類似のJSONオブジェクトが2つありますJObject.FromObject()
。
各オブジェクトには、次のような他のオブジェクトの配列を持つプロパティがあります。
Doc1
{
"Title": "Alpha",
"data": [
{
"Id": "Fox2",
"Field": "King6",
"Value": "Alpha",
"Description": "Tango"
}
]
}
Doc2
{
"Title": "Bravo",
"data": [
{
"Id": "Kilo",
"Field": "Echo",
"Value": "Romeo",
"Description": "Jester"
}
]
}
これらのオブジェクトが2つあり、一方から他方にデータフィールドを追加しようとしています。基本的に、一方の「data」プロパティの配列から他方の配列にデータを追加します。
最終結果は次のようになります。
{
"Title": "Alpha",
"data": [
{
"Id": "Fox2",
"Field": "King6",
"Value": "Alpha",
"Description": "Tango"
},
{
"Id": "Kilo",
"Field": "Echo",
"Value": "Romeo",
"Description": "Jester"
}
]
}
逆シリアル化や文字列の組み合わせなどでねじ込むことなく、これを実行しようとしています。
私はこれのバリエーションを試しました:
var data = JObject.FromObject(doc1);
var editData = JObject.FromObject(doc2);
foreach (var editItem in editData.Property("data").Children())
{
data.Property("data").Add(editItem.Children());
}
ただし、次のようなエラーが発生し続けます。
Newtonsoft.Json.Linq.JPropertyは複数の値を持つことはできません
。
アレイをどのように組み合わせる必要がありますか?