我正在从外部Web服务中获取一些数据,并使用Newtonsoft.Json.Linq将其解析为json
像这样
JObject o = JObject.Parse(json);
JArray sizes = (JArray) o["data"];
现在Sizes
看起来像这样
{
[
{
"post_id": "13334556777742_6456",
"message": "messagecomes her",
"attachment": {
"media": [
{
"href": "http://onurl.html",
"alt": "",
"type": "link",
"src": "http://myurl.jpg"
}
],
"name": "come to my name",
"href": "http://mydeeplink.html",
"description": "",
"properties": [],
},
}
]
}
我需要"src": "http://myurl.jpg"
从这个Json数组中获取元素。我试过了:
foreach (JObject obj in sizes)
{
JArray media = (JArray)obj["attachment"];
foreach (JObject obj1 in media)
{
var src = obj1["src"];
}
}
但这会引发错误:
Unable to cast object of type 'Newtonsoft.Json.Linq.JObject' to type 'Newtonsoft.Json.Linq.JArray'.
在这条线
JArray media = (JArray)obj["attachment"];
有人可以帮我吗?
尝试修复线
JArray media = (JArray)(obj["attachment"]);
至
JArray media = (JArray)(obj["attachment"]["media"]);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句