JSONConverter不用于某些类型的容器



我有一个从jsonconverter继承的类: JsonDataBagCreationConverter<T> : JsonConverter where T : IDataBag

我有一家实现idatabag的班级公司

当我对公司JSondataBagCreationConverter的单属性进行单一属性时,就会按照我的期望调用其readjson方法。当我对公司的 Array 进行估算时,JsondatabagcreationConverter的读取方法如我所期望的那样被调用。它还适用于 generic 公司列表。

但是,对于公司JSON.NET公司的某些容器,将不认识到列表的内容是类型公司。因此,当我避免时,不会使用jsondatabagcreationConverter。

即类型容器 System.Collections.dictionaryEntry, system.collections.arraylist, system.collections.hashtable, System.Collections.SortedList这存储公司对象。

我知道这些容器是非类型的。是否可以使(DE-)序列化器查看这些容器的内容,并在目录是idatabag(即公司)时使用jsondatabagagcreationConverter?

最好的问候

Jan

从转换器中删除where T : IDataBag并覆盖CanConvert,并编写您的逻辑以检查您的类型并符合返回true或false。

相关内容

  • 没有找到相关文章

最新更新