Я пытаюсь прочитать объект JSON с использованием JavaScriptSerializer. В настоящее время я не могу прочитать объект JSON с моим кодом.Прочитать объект JSON
ниже мой объект JSON.
{"data":[{"id":17,"name":"RedBug Project","can_modify":true,"description":"","start_date":"1899-01-01T00:00:00Z","due_date":"1899-01-01T00:00:00Z","is_active":true,"parent":{"id":0}},{"id":14,"name":"RedRock","can_modify":true,"description":"","start_date":"1899-01-01T00:00:00Z","due_date":"1899-01-01T00:00:00Z","is_active":true,"parent":{"id":0},"children":[{"id":16,"name":"WEB","can_modify":true,"description":"","start_date":"1899-01-01T00:00:00Z","due_date":"1899-01-01T00:00:00Z","is_active":true,"parent":{"id":14}}]}]}
Метод читать JSON
public Dictionary<string, string> ReadJSONProject(string jsObject)
{
var json = jsObject;
JavaScriptSerializer serializer = new JavaScriptSerializer();
dynamic jsonObject = serializer.Deserialize<dynamic>(json);
Dictionary<string, string> dic = new Dictionary<string, string>();
foreach (var item in jsonObject)
{
var a = item;
dic.Add(item["id"], item["name"]);
}
return dic;
}
мне нужно прочитать ниже значения словаря
"id":17,"name":"RedBug Project"
"id":14,"name":"RedRock"
Отладка кода, JSONObject становится 'Dictionary'. Я думаю, вы должны пойти с классом вместо использования 'dynamic'. Также обратите внимание, что цикл 'foreach' только петли один раз ... есть только один элемент в jsonobject, и это массив из большего количества массивов. –
Zerkey
В любом случае, я получил код, чтобы сделать именно то, что вы хотите. См. Мой ответ ниже. – Zerkey