反序列化列表列表,其中外部列表​​没有标识符而没有硬编码

时间:2018-04-06 11:35:13

标签: c# .net json.net deserialization

这是为这个标题写一个难题。

我有一些JSON,我必须使用外部API。它有一个类别和子类别列表,用于捕获人们的电子邮件首选项。

我遇到的问题是这些类别没有标题'字段和子类别列表'像我期望的那样。 Category只是一个命名包装器:

 "email_preferences": [
        {
            "Entertainment/Arts": [
                {
                    "value": "Art & exhibitions",
                    "key": "artExhibitions"
                },
                {
                    "value": "Theatre",
                    "key": "theatre"
                }
            ]
        },
        {
            "Lifestyle": [
                {
                    "value": "Health & fitness",
                    "key": "healthFitness"
                },
                {
                    "value": "Gardening",
                    "key": "gardening"
                }
            ]
        } .... etc etc

如果我将其粘贴到在线C#模型生成器中,它会将所有类别硬编码为电子邮件首选项节点的子列表。

有没有办法纠缠JSON.Net,让我有一个动态的类别列表,而不是硬编码?

编辑:

这不是引用问题的副本。那个有一系列kvp对象,而不是它们的列表

但是这里有一个重复的问题: JSON array to C# Dictionary

但是答案对我来说并不适用,因为JSON.Net创建了带有空字段的KVP,可能是由于不知道如何使用Create()方法。

我最终不得不使用单个元素词典列表。

0 个答案:

没有答案