首先,我會做的是將Members
屬性更改爲array
而不是object
。然後,我會做這樣的事情:
//original json. Notice that I added '[ ]' to make it an array
var json = "{ 'Members': " +
"[ " +
"{'Example1': " +
"{ 'LastOnline': '2016-05-16T12:09:04.6459345Z', " +
"'TimeUntillEx': '2016-05-16T12:09:04.6459345Z', " +
"'Paied': true" +
"}, " +
"} " +
"] " +
"}";
//new member
var newMember = "{ 'Example2': " +
"{ 'LastOnline': '2016-12-16T12:09:04.6459345Z', " +
"'TimeUntillEx': '2016-12-16T12:09:04.6459345Z', " +
"'Paied': false" +
"}, " +
"}";
//parse the json
var obj = JObject.Parse(json);
//get members array
var array = obj.GetValue("Members") as JArray;
//parse the new member and add it to the array
var add = JObject.Parse(newMember);
array.Add(add);
//serialize the json
var output = JsonConvert.SerializeObject(obj, Formatting.Indented);
//print the results
Console.WriteLine(output);
對於這一點,你需要
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
我認爲你需要的JSON反序列化到一個模型中,添加條目,然後序列化再次。 – FailedUnitTest
@@ FailedUnitTest上面的答案。如果您處理純文本,另一個選項可能是爲對象構建模板並執行簡單的佔位符替換來添加新對象。 –
http://www.newtonsoft.com/json/help/html/MergeJson.htm –