温馨提示×

C# json序列化支持循环引用吗

c#
小樊
124
2024-07-19 13:15:40
栏目: 编程语言
前端开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

C# 的默认 JSON 序列化工具 Newtonsoft.Json 是不支持循环引用的。当序列化对象时,如果存在循环引用,会抛出异常。

不过,可以通过设置 JsonSerializerSettings 的 PreserveReferencesHandling 属性来支持循环引用的序列化。示例如下:

var settings = new JsonSerializerSettings
{
    PreserveReferencesHandling = PreserveReferencesHandling.Objects
};

string json = JsonConvert.SerializeObject(yourObject, settings);

通过设置 PreserveReferencesHandling 为 Objects,可以保留对象引用关系,从而支持序列化循环引用。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:c# litjson怎样解决循环引用问题

0