gpt4 book ai didi

c# - Json.net 自定义 JsonConvert for Dictionary[]

转载 作者:行者123 更新时间:2023-11-30 22:59:28 24 4
gpt4 key购买 nike

我已成功使用自定义 JsonConverter 来处理字典中可能是字符串或对象的项目:

[JsonProperty("result", ItemConverterType = typeof(TableFieldOrStringConverter), )]
public Dictionary<string, TableField> Records { get; set; }

但现在我有一个属性,它是一个字典数组。

public Dictionary<string, TableField>[] Records { get; set; }

如何设置自定义转换器以将其应用于字典的值?

这与大多数将转换器应用到字典项的值的问题不同,因为我试图将转换器应用到字典数组中的字典项的值,并且没有出现 JSonPropery 属性允许这样做。

最佳答案

我想我通过将属性分解为另一个类来解决这个问题。

[JsonObject]
public class TableUpdateResponse : IAPIResponse
{
[JsonProperty("result")]
public TableRow[] Records { get; set; }
}

[JsonDictionary(ItemConverterType = typeof(TableFieldOrStringConverter))]
public class TableRow : Dictionary<string, TableField>
{

}

[JsonObject]
public class TableField
{
[JsonProperty("display_value")]
public string DisplayValue { get; set; }

[JsonProperty("value")]
public string Value { get; set; }

/// <summary>
/// Applicable when the field references another record
/// </summary>
[JsonProperty("link")]
public string Link { get; set; }
}

关于c# - Json.net 自定义 JsonConvert for Dictionary<string,object>[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52172037/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com