【发布时间】:2021-04-19 23:25:24
【问题描述】:
对我的网络请求的响应如下(不受我控制):
{
"nasdaq_imbalance":
{
"name": "nasdaq_imbalance",
"group": "Market Data",
"description": null
},
"DXOpen IM":
{
"name": "DXOpen IM",
"group": "Daily",
"description": null
},
"Float Shares":
{
"name": "Float Shares",
"group": "Daily",
"description": null
},
}
不知何故,我需要将其反序列化为包含对象列表的 C# 对象... 基本上我需要一个这样的对象列表:
public class Dataset {
public string name { get; set; }
public string group { get; set; }
public string description { get; set; }
}
【问题讨论】:
-
你可以去quicktype.io把你的json粘贴进去,它会生成类,和deser代码,甚至cmets告诉你如何使用它
-
@CaiusJard 可能不是最好的副本,因为 JavaScriptSerializer 已被弃用。
-
这就是 C# JSON Qs 的问题..太多重复..stackoverflow.com/questions/25052293/…
-
@CaiusJard 问题在于 SO。对我来说,输入这样的简短答案比尝试查找重复并希望版主在我标记它时真正看到它更容易。
-
更好的副本是How can I parse a JSON string that would cause illegal C# identifiers?。那里的答案是1)如果根对象属性名称不固定,请使用字典; 2) 如果根对象的属性名称是固定的,请使用属性标记为
JsonPropertyAttribute属性的根对象,例如[JsonProperty("DXOpen IM")] public Dataset DXOpenIM { get; set; }.
标签: c# json deserialization converters