0
背景:我试图将我的数据序列化到Json中,并从我的MVC控制器中返回它,我想将2个C#数据对象合并到一个单一的json结果中。我已经重写了JsonResult来使用JsonConvert.SerializeObject,它适用于1个对象。通过我想将2个C#对象合并成1个json结果。如何在Json.Net中合并2个JObjects?
背景:我试图将我的数据序列化到Json中,并从我的MVC控制器中返回它,我想将2个C#数据对象合并到一个单一的json结果中。我已经重写了JsonResult来使用JsonConvert.SerializeObject,它适用于1个对象。通过我想将2个C#对象合并成1个json结果。如何在Json.Net中合并2个JObjects?
在Json.Net 4.5:
JObject o1 = JObject.FromObject(data, serializer);
JObject o2 = JObject.FromObject(data2, serializer);
foreach (var i in o2)
{
o1.Add(i.Key, i.Value);
}
在Json.Net 6:
JObject o1 = JObject.FromObject(data, serializer);
JObject o2 = JObject.FromObject(data2, serializer);
o1.Merge(o2, new JsonMergeSettings
{
// union array values together to avoid duplicates
MergeArrayHandling = MergeArrayHandling.Union
});