首页 > 解决方案 > JSON.Net 从 2 种 json 格式反序列化

问题描述

我有来自 2 个不同来源的 JSON,它们对同一个对象使用不同的结构。

使用 JSON.Net,是否可以将这两种 json 格式反序列化为相同的类结构?请注意,一个使用 JsonProperty,另一个具有相同的属性名称,默认反序列化过程将在其中工作。

来源 A

    {
       "Fruit":"Apple"
    }

来源 B

    {
       "f":"Apple"
    }

进入同一个对象...

public class Food
{
    [JsonProperty("f")]
    public string Fruit { get; set; }
}

如果答案是肯定的,这是如何完成的(代码示例真的很有帮助!)?

标签: jsonjson.net

解决方案


解决方案是创建一个自定义合同解析器,如本文所述...

序列化json时如何忽略JsonProperty(PropertyName = "someName")?

如果没有大量的谷歌搜索,我无法找到这篇文章,所以我在这里链接它而不是删除我的帖子。


推荐阅读