【发布时间】:2015-11-30 15:41:56
【问题描述】:
我有以下有效的 JSON,我需要遍历结果。我正在使用 JSON.NET 和 c#。我能够获得成功的价值,但我不知道如何访问任何指导都会有所帮助。
{
"SUCCESS": 1,
"ERRMSG": "",
"COLUMNSANDDATA": {
"COLUMNS": ["LASTNAME", "FIRSTNAME", "EMAILADDRESS", "COURSENAME", "PROGRAMID",
"ENROLLMENTSTARTDATE", "COMPLETIONDATE", "GRADE", "SCORE",
"PASSED_NOTPASSED", "TYPEOFCREDITS", "CREDITSEARNED", "INSTRUCTORNAME",
"INSTRUCTOREMAILADDRESS", "CLIENTNAME", "COMMUNITYNAME",
"CERTIFICATESENTDATE", "DURATIONTYPE", "DURATIONMINUTES",
"LOGIN"],
"DATA": [
["Beane", "Coffee", "lynn@domain.com", "Program with One Essay Test", null,
"January, 06 2014 18:06:56", "January, 06 2014 18:57:53", "Incomplete", null,
"Not Passed", "Musical Note", 0.00, "Ray Bradbury", "lynn@domain.com",
"Hogarth's Flying Circus", "Captain's Club", null, null, null,
"lynn@domain.com"],
["Beane", "Navy", "lynn@domain.com", "Program with One Essay Test", null,
"January, 06 2014 18:06:56", "January, 06 2014 18:36:39", "Pass", 95.00,
"Passed", "Musical Note", 1.00, "Ray Bradbury", "lynn@domain.com",
"Hogarth's Flying Circus", "Captain's Club", "January, 06 2014 08:00:00",
null, null, "NavyB"]
]
}
}
我可以通过使用这个代码块获得成功值
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
var result = streamReader.ReadToEnd();
var deserializer = new JavaScriptSerializer();
var jsonObj = (IDictionary<string, object>)deserializer.DeserializeObject(result); ;
Response.Write((string)jsonObj["SUCCESS"]);
}
【问题讨论】:
-
你确定你使用的是Json.Net吗?
JavaScriptSerializer是 Microsoft 提供的类(不是 Json.Net 的一部分)。 -
是的。我安装了 JSON.NET,因为我看过的很多示例都使用它。该项目最初是使用 MS 提供的类库创建的。