如何使用JSON.NET对JSON输出进行排序?

时间:2012-03-26 22:54:33

标签: c# json.net

我需要生成始终以相同方式排序的JSON。

使用JSON.NET我已经实现了这一点,首先将对象序列化为json字符串然后deserealizing为一个排序字典,使用StringComparer.Ordinal作为排序顺序(我需要的顺序),然​​后将其序列化为json字符串。 这种方法效果很好,但仅适用于属于顶级对象的属性集。

一旦有子对象,子词典,子列表等,这将无效。

我查看了文档,但我找不到任何与排序有关的内容,所以我的问题是:

有没有办法在序列化为字符串时将JSON.NET设置为使用特定的排序顺序?

1 个答案:

答案 0 :(得分:1)

我担心没有内置的方法可以做到这一点。类似问题的answer证实了这一点。

所以唯一的方法是手动(可能通过递归)我想。