背景:我正在尝试将我的数据序列化为Json并从我的MVC控制器返回它,并且我想将2个C#数据对象合并为单个json结果。我已经重写了JsonResult以使用适用于1个对象的JsonConvert.SerializeObject。我希望将2个C#对象合并为1个json结果。
答案 0 :(得分:2)
在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
});