c# - 如何反序列化一个对象中的多个对象?
问题描述
我有以下 JSON 正在尝试反序列化。
"objects": {
"1612": {
"id": 1612
},
"1626": {
"id": 1626
}
}
我正在尝试将其反序列化为理想的列表,但到目前为止我还没有运气。
我尝试了以下方法:
public List<Object> objects { get; set; }
public Dictionary<string, Team> objects { get; set; }
我知道理想情况下 JSON 应该在数组 [] 中,但事实并非如此。
先感谢您。
解决方案
您的 JSON 不包含任何集合,因此列表/数组不合适。
您应该有一个具有一个属性的父对象objects
:
public class RootObject
{
// I dont know what Team is but I assume it has the 'id' property
public Dictionary<string, Team> Objects { get; set; }
}
如果您使用的是 Json.NET,那么反序列化将是:
var rootObj = JsonConvert.DeserializeObject<RootObject>(someJson);
在这里提琴
推荐阅读
- python - 使用子进程读取 adb shell 但我没有看到从 adb shell 返回的任何数据
- vba - 如何将组添加到 ListView?
- javascript - 如何为 dompdf Laravel 制作动画进度
- php - 从链接表中获取选中的复选框
- flutter - 启动画面 - 在 initState 上完成异步调用之前,AnimationController 不会启动
- css - 停止 Dashlane 对特定输入字段的自动填充?
- javascript - 如何使用材质 UI 选项卡的道具更改选项卡?
- vuetify.js - v-switch 的点击事件不一致
- c++ - 将带有非类型参数的模板适配为模板模板参数
- laravel - passing query data to send in mail laravel