c# - Json nested parameters -
i using data json object populate list view. object has these parameters:
"id": "339150749455906", "posts": { "data": [ { "id": "339150749455906_545370565500589", "from": { "category": "food/beverages", "name": "pepsi", "id": "339150749455906" }, "story": "pepsi updated cover photo.", "picture": "http://photos-g.ak.fbcdn.net/hphotos-ak-ash3/942740_545370555500590_46289134_s.jpg", "link": "http://www.facebook.com/photo.php?fbid=545370555500590&set=a.365573920146922.72816.339150749455906&type=1&relevant_count=1", "icon": "http://static.ak.fbcdn.net/rsrc.php/v2/yz/r/steh3rhpvjk.gif", "actions": [ { "name": "comment", "link": "http://www.facebook.com/339150749455906/posts/545370565500589" }, { "name": "like", "link": "http://www.facebook.com/339150749455906/posts/545370565500589" } ], i want access link inside parameter/key "actions". far using:
foreach (var post in poststaskresult.posts.data) { link = new uri(string.format("{0}", (string)post["link"])); } however, brings link in "data". how can access other 'link' ?
try this.
var actionlinks = new list<string>(); var actions = post["actions"] jarray; // if works foreach(var item in actions) { actionlinks.add((string)item["link"]); } i think can use fancy linq like
var actionlinks = ((jarray)post["actions"]) .children<jobject>() .select(a => (string)a["link"]) .tolist(); very un-tested. let me know.
Comments
Post a Comment