首页 >后端开发 >C++ >如何使用 JSON.NET 将带有动态键的 JSON 反序列化为 C# 对象?

如何使用 JSON.NET 将带有动态键的 JSON 反序列化为 C# 对象?

Patricia Arquette
Patricia Arquette原创
2025-01-19 19:17:09924浏览

How to Deserialize JSON with Dynamic Keys into C# Objects using JSON.NET?

将具有动态键的JSON反序列化到C#对象

您的网络请求响应包含键未预先确定的JSON数据。您需要将此数据反序列化到一个C#对象列表中,其属性与JSON结构匹配。

使用字典进行JSON.NET反序列化

如果您使用的是Json.NET,您可以利用JsonConvert.DeserializeObject方法以及字典来处理具有动态键的JSON。方法如下:

<code class="language-csharp">Dictionary<string, Dataset> datasets = JsonConvert.DeserializeObject<Dictionary<string, Dataset>>(json);</code>

生成的字典将具有映射到动态JSON键的键(例如,“nasdaq_imbalance”、“DXOpen IM”、“Float Shares”)。字典中的每个值都将是一个Dataset对象,其属性与JSON数据匹配。

Dataset类

为了使这种方法有效,您需要一个Dataset类来定义列表中每个对象的属性:

<code class="language-csharp">public class Dataset
{
    public string name { get; set; }
    public string group { get; set; }
    public string description { get; set; }
}</code>

以上是如何使用 JSON.NET 将带有动态键的 JSON 反序列化为 C# 对象?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn