Ich habe mit einigen Problemen zu tun, die meine Json-Arrays zusammenführen. Die Original-Arrays zusammengefasst werden ähnlich aussehen wie diese:C# JObject verschachtelt nicht richtig
{
"ads":[
{
"a1": "b1",
"i1": "j1",
"x1": "y1",
}
]
}
{
"ads": [
{
"a2": "b2",
"i2": "j2",
"x2": "y2",
}
]
}
Das Ergebnis meiner merge sieht wie folgt aus:
{
"ads:[
[
{
"a1": "b1",
"i1": "j1",
"x1": "y1",
}
],
[
{
"a2": "b2",
"i2": "j2",
"x2": "y2",
}
]
]
}
Was ich versuche, dies zu abspecken, ist:
{
"ads:[
{
"a1": "b1",
"i1": "j1",
"x1": "y1",
},
{
"a2": "b2",
"i2": "j2",
"x2": "y2",
}
]
}
Der Code, der den beiden ist, zur Zeit, dies zu versuchen, die verwendet wird, zu fusionieren:
// Combine all ads within formattedContent into one single JOBject.
JToken token = null;
JArray jarray = new JArray();
List<JToken> jtokens = new List<JToken>();
foreach (JObject jobject in formattedContent)
{
token = JToken.Parse(jobject.SelectToken("ads").ToString());
jarray.Add(token);
}
Aber ich bin mit den doppelt verschachtelten Arrays stecken, wenn das Endprodukt in allen Anzeigen im "Anzeigen" -Token unter einem Array resultieren muss. Beachten Sie, dass formatedContent in dem obigen Code ein List<JObject>
ist. Jede Hilfe beim Zusammenführen von JSON-Arrays wäre erwünscht. Wenn versucht wird, die Token zu einer Zeichenfolge hinzuzufügen, bevor sie zum JArray hinzugefügt werden, werden Wagenrücklaufzeichen und Escape-Zeichen hinzugefügt. (Diese werden nur während der Debugger-Ansicht hinzugefügt [wie ich es häufig vorgeschlagen habe], sie sind jedoch tatsächlich) reflektiert im Endprodukt)
Haben Sie die Kontrolle über die JSON-Formate, oder müssen Sie mit dem JSON arbeiten, den Sie oben zeigen? – Jonathan
Der Kommentar von @dbc ist die Syntax, nach der ich gesucht habe. Um Ihre Frage zu beantworten, nein, ich bin gezwungen, in dieses Json-Format durch eine externe API, die mich zwingt, alle 6000 Anzeigen (bei 300 pro Seite) zusammenzuführen, nur weil sie keine Suche nach Händler-Funktion haben. –