我在不知道索引的情况下尝试按照 C# 中的示例 Parsing json 进行操作。我一直遇到一个错误:
Newtonsoft.Json.Linq.JObject' 不包含 ip_addresses 的定义
我想要实现的是解析以下 JSON 并将每个 ip 地址添加到 ObservableCollection。如果我知道密钥但IP地址可以命名任何东西,这一切都很好。
这是我目前正在处理的代码,IP 地址有它自己的类的原因是因为稍后在应用程序中还有很多事情要做:
try
{
dynamic jObj = JsonConvert.DeserializeObject(e.Result);
foreach (var child in jObj.ip_addresses.Children())
{
ips.Add(new IpAddresses() { ip = child });
}
}
catch
{
MessageBox.Show("Generic error message");
}
public class IpAddresses
{
public string ip { get; set; }
}
这是 JSON:
{
"id": "reallysimpleid",
"label": "server name",
"ip_addresses": {
"private0_v4": "100.100.100.100",
"access_ip0_v4": "100.100.100.100",
"public0_v6": "1000:1000:7805:0113:9073:8c63:1000:1000",
"access_ip1_v6": "1000:1000:7805:0113:9073:8c63:1000:1000",
"public1_v4": "100.100.100.100"
},
"metadata": null,
"managed": false,
"uri": "https://www.awebsite.com",
"agent_id": null,
"created_at": 1360960027217,
"updated_at": 1360960027217
}