我有这个JSON(实际上是Swagger):
{
"swagger": "2.0",
"info": {
"version": "2.0",
"name": "TheName",
"description": "No description"
}
"somethingElse" : "xyz"
}
我正在使用Newtonsoft.JSON。我定义了我的对象:
public class WebService
{
public string swagger;
public Dictionary<string, object> AllOthers;
}
正如您所看到的,我没有定义&#34; info&#34;或&#34; somethingElse&#34;对象作为成员。相反,我希望将其放入通用的AllOthers字典
当我打电话
var ws = Newtonsoft.Json.JsonConvert.DeserializeObject<WebService>(swaggerJSON);
ws现在将正确包含swagger版本号字符串,但AllOthers将包含null。我希望AllOthers包含名称和描述的entires,以及存储在通用对象中的有效负载。
这是如何实现的,还是不容易实现?
由于
答案 0 :(得分:2)
此[JsonExtensionData]
有一个属性。使用以下属性标记您的字典:
public class WebService
{
public string swagger;
[JsonExtensionData]
public Dictionary<string, object> AllOthers;
}
var ws = Newtonsoft.Json.JsonConvert.DeserializeObject<WebService>(json);
我希望这有帮助!欢呼声。