Использование IDictionary с Json? - PullRequest
       33

Использование IDictionary с Json?

0 голосов
/ 21 декабря 2011

как получить список друзей (ниже) в iDictionary и из него?

Пример

{
  "data": [
    {
      "name": "John Smith", 
      "id": "111"
    }, 
    {
      "name": "Alice Smith", 
      "id": "222"
    }, 
    {
      "name": "Mary Smith", 
      "id": "333"
    }
  ], 
  "paging": {
    "next": "https://graph.facebook.com/me/friends?format=json&limit=5000&offset=5000&__after_id=100003243976011"
  }
}

1 Ответ

1 голос
/ 21 декабря 2011
  1. Вы должны добавить ссылку на сборку System.web и System.Web.Extensions в своем приложении
  2. Затем попробуйте использовать следующий код

string jsonData= @ "{" "data" ": [{" "name" ":" "John Smith" "," "id" ":" "111" "},
{" "name" ":" "Алиса Смит "", "" id "": "" 222 ""},
{"" name "": "" Mary Smith "", "" id "": "333" "}],
"" paging "": {"" next "": "" https://graph.facebook.com/me/friends?format=json&limit=5000&offset=5000&__after_id=100003243976011""}} ";

            JavaScriptSerializer seri = new JavaScriptSerializer();
            var items = seri.Deserialize<Dictionary<string, object>>(jsonData);
        // As data in JSON is array get it deserialize as ArrayList of Dictionary<string,object>
            var dataArray =  items["data"] as ArrayList;    
        // Each item in array list contain key value pair of name and id
            foreach (Dictionary<string,object> item in dataArray)
                {
        //Read Item
                foreach (KeyValuePair<string, object> detailItem in item)
                    {
                    Console.WriteLine(detailItem.Key + " - " + detailItem.Value);
                    }
                Console.WriteLine("-------------------------------------------");
        // Read Item
                }
...