我有一个继承自 JsonConverter 的类:
JsonDataBagCreationConverter<T> : JsonConverter where T : IDataBag
我有一个实现 IDataBag 的类 Company
当我反序列化 Company JsonDataBagCreationConverter 的单个属性时,它的 ReadJson 方法按我的预期调用。当我反序列化一个Company数组时,JsonDataBagCreationConverter 会按我的预期调用它的 ReadJson 方法。它也适用于公司的通用列表。
但是对于 Company 的某些容器,json.net 将无法识别列表的内容是 Company 类型。所以反序列化时不使用 JsonDataBagCreationConverter 。
即存储公司对象的 System.Collections.DictionaryEntry、System.Collections.ArrayList、System.Collections.Hashtable、System.Collections.SortedList 类型的容器。
我知道这些容器是非通用的。是否可以让(反)序列化程序查看这些容器的内容并在内容为 Idatabag(即公司)时使用 JsonDataBagCreationConverter?
此致
简