首页 > 解决方案 > 将 json 数组(无键)映射到类对象 C#

问题描述

我需要一些帮助来映射没有键的 json 数组。举些例子:

[
    "value1",
    234,
    3034,
    "data",
 [
    "some value",
    null,
    2020
 ],
]

我根据收到的这些值创建了一个类,但我无法映射到类对象。我只能使用动态变量访问这些数据,例如:

dynamic object = DataFromJson();
var firstvalues = object[0]; // "value1"

我的 json 太大了,里面有很多数组,所以用索引访问是一个很大的过程。

有人知道如何访问这种数据并映射到一个类吗?

标签: c#jsonmapping

解决方案


我收到了很多关于此的反馈(谢谢!),所以这是结论:

  • 作为 JSON 数组,此类信息无法正确映射到类对象。这不是功能建议。

  • JArray 非常有助于在所有信息之间进行交互,然后将其带到一个类中。如果需要,您可以手动创建一个特定方法以将每个值包含在您的类对象中。

  • 另一种选择是使用动态对象,作为索引访问。

  • 确保不能以其他方式接收此信息,作为带有键和值的 JSON,并映射到类。

如果有一些有用的更新,我会在这里编辑。


推荐阅读