将字典导出为JSON(按键排序)

use*_*014 1 .net c# json dictionary

我有一本字典

Dictionary<string, object>
Run Code Online (Sandbox Code Playgroud)

(值可以是字符串,整数或双精度型)。我将字典导出到JSON文件:

JsonConvert.SerializeObject(myDict);
Run Code Online (Sandbox Code Playgroud)

我希望保存的JSON按键排序。

Cod*_*ter 5

如果您使用SortedDictionary<TKey, TValue>,则会按键顺序对其进行序列化:

var dict = new SortedDictionary<string, int>
{
    { "Z", 3 },
    { "B", 2 },
    { "A", 1 },
};

var json = JsonConvert.SerializeObject(dict);

Console.WriteLine(json);
Run Code Online (Sandbox Code Playgroud)

输出:

{"A":1,"B":2,"Z":3}
Run Code Online (Sandbox Code Playgroud)