我有一个带JsonExtensionData的基类,让我们假设
class AType {
public AType() { _additionalData = new Dictionary<string, JToken>(); }
[JsonExtensionData]
public IDictionary<string, JToken> _additionalData;
}
以及使用其他属性扩展A的B类
class BType : AType {
public int N { get; set; }
public int Name { get; set; }
}
将B对象数组反序列化为 List<BType>
时,所有值都会进入 _additionalData
,而不会进入正确的属性,即< strong> N
和 Name
。 JObject.ToObject(Type)
和 JsonConvert.DeserializeObject(string, Type)
答案 0 :(得分:1)
发现问题......而且我的问题。对此抱歉,您可以解决此问题。
在我的应用程序中我有很多类,并且我首先尝试使用默认的.net json转换器,但是当我改为使用json.net库和thouse时,我忘了在类的2上删除DataContractAttribute在BType