将C#对象序列化为特定类型的多维JSON数组

本文关键字:JSON 数组 类型 对象 序列化 | 更新日期: 2023-09-27 18:24:46

我使用的Highcharts需要以下格式的数据,但我很难实现:

var data = [
    ["CityName", 1234],
    ["City2", 12123]
]

等等。。。

所以,我需要像上面的数组一样格式化,但似乎无法实现

我在JSON.NET:上看到了这一点

string[,] famousCouples = new string[,]
  {
    { "Adam", "Eve" },
    { "Bonnie", "Clyde" },
    { "Donald", "Daisy" },
    { "Han", "Leia" }
  };
string json = JsonConvert.SerializeObject(famousCouples, Formatting.Indented);
// [
//   ["Adam", "Eve"],
//   ["Bonnie", "Clyde"],
//   ["Donald", "Daisy"],
//   ["Han", "Leia"]
// ]

这对字符串来说很好,但字符串和浮点运算在一起怎么样?这是一个要求,因为其中一个数字需要在列表上聚合,而string[,]确实不是一个理想的对象。

目前,我正在使用List<Dictionary<string,float>(这也是自定义对象的结果),串行器将数据输出为:

var data = [
   {"CityName", 1234}
]

等等。

我可能错过了一些非常简单的东西,但有什么方法可以实现吗?

将C#对象序列化为特定类型的多维JSON数组

我想你可能想要object[,]:

object[,] cityNames = new object[,] {
    {"CityName", 1234},
    {"City2", 12345 }
};