gpt4 book ai didi

c# - 如何序列化\反序列化属性名称依赖于数据的属性

转载 作者:行者123 更新时间:2023-11-30 12:35:40 26 4
gpt4 key购买 nike

我正在尝试反序列化以下 json(见下文)(使用 newtonsoft json 序列化程序),问题是名为“2010-12”的变量显然取决于返回的数据 - 它代表一个月和下一个月份值将更改为“2010-01”。

关于我如何在后续类(class)中处理这个问题有什么想法吗?

[JsonObject(MemberSerialization.OptIn)]
public class Crimes
{
[JsonProperty()]
public Month Month { get; set; }
}

示例 JSON 实例:

{
"commentary": null,
"crimes": {
"2010-12": {
"anti-social-behaviour": {
"crime_rate": "0.46",
"crime_level": "average",
"total_crimes": 74
},
"other-crime": {
"crime_rate": "0.35",
"crime_level": "average",
"total_crimes": 56
},
"all-crime": {
"crime_rate": "1.12",
"crime_level": "average",
"total_crimes": 180
},
"robbery": {
"crime_rate": "0.02",
"crime_level": "above_average",
"total_crimes": 3
},
"burglary": {
"crime_rate": "0.14",
"crime_level": "above_average",
"total_crimes": 22
},
"vehicle-crime": {
"crime_rate": "0.04",
"crime_level": "average",
"total_crimes": 7
},
"violent-crime": {
"crime_rate": "0.11",
"crime_level": "average",
"total_crimes": 18
}
}
}
}

最佳答案

我不熟悉 Newtonsoft 的反序列化器,但一般来说,我认为要做的事情是将 crimes 属性反序列化为带有字符串或 DateTime 键的字典。抱歉,我无法确切地告诉您如何在 Newtonsoft 中执行此操作,但请尝试研究一下。

关于c# - 如何序列化\反序列化属性名称依赖于数据的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5079825/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com