使用 Json.NET 自定义映射



我正在尝试映射看起来像 JSON

"ids": {
    "id": {
        "@value":"6763754764235874140"
    }
}

我想把它映射到几个类上,

看起来像
class Property
{
    public Ids Ids { get; set; }
}
class Ids
{
    public string Id { get; set; }
}

所以基本上我想将 JSON 文档中ids/id/@value的值填充到类体系结构中的Ids.Id中。 通过浏览文档,我认为我可以使用类似的东西

[JsonProperty(ItemConverterType=typeof(IdConverter))]
public string Id { get; set; }

并提供一个名为 IdConverter 的自定义JsonConverter子类。 然而,当我这样做时,我的IdConverter.ReadJson永远不会被召唤。 我做错了什么?

看起来答案是ItemConverterType用于转换数组中的项目。 使用JsonPropertyJsonConverter属性对属性进行双重批注可以:

[JsonProperty(PropertyName="id")]
[JsonConverter(typeof(IdConverter))]
public string Id { get; set; }

相关内容

  • 没有找到相关文章

最新更新