web服务(我不拥有/控制)返回(作为JSON)具有不同参数的呼叫的不同数据。这些数据字段中的一些很常见。
平台: .net/c#,with newtonsoft.json库。
我无法为每个变体定义单个类。
所以,我想知道是否有办法告诉newtonsoft.json deserialize()方法,我希望它们将剩余的JSON对象放入特定属性 - 可能是Dictionary<string, object>
?
有一个称为 JsonExtensionData
的属性。可以将其放置在具有合适类型的属性上,以接收多余的数据:
[JsonExtensionData]
public IDictionary<string, JToken> AdditionalData { get; set; }
就个人而言,我也使用了以下内容 - 但仅用于序列化而不是绝对化:
[JsonExtensionData]
public IDictionary<string, object> AdditionalData { get; set; }
[JsonExtensionData]
public IDictionary<string, dynamic> AdditionalData { get; set; }