我有一个JSON对象,我已经反序列化到服务器端的对象。其中一个对象是对象的数组列表,每个对象都是一个字符串数组的字典。在我的观察中,我可以深入了解对象并查看对象中的所有内容,但我无法弄清楚如何访问代码中对象内的数据。我需要遍历每个对象并访问字典中的键和值。 Rigor对象就是我正在努力钻研的内容。C#访问对象内的数据
我已经硬编码什么样的数据看起来像在未来的一个例子。
string rigorSelection = "{\"StandardID\":165638," +
"\"ItemTypes\":[\"Multiple Choice\",\"True/False\",\"Constructed Response\",\"Explicit Constructed Response\",\"Select Dropdown\",\"Evidence Based Selected Response\",\"Drag and Drop\",\"Selectable Text\",\"Multi-Part\",\"Graphing\",\"Matching\"], " +
"\"TotalItemCount\":10," +
"\"StandardName\":\"CCSS.9_12.MA.N.RN.2\"," +
"\"Rigor\":[" +
"{\"Remembering\":[0,0,0,0,0,0,0,0,0,0,0]}," +
"{\"Understanding\":[0,0,0,0,0,0,0,0,0,0,0]}," +
"{\"Applying\":[0,0,0,0,0,0,0,0,0,0,0]}," +
"{\"Analyzing\":[0,0,0,0,0,0,0,0,0,0,0]}," +
"{\"Evaluating\":[0,0,0,0,0,0,0,0,0,0,0]}," +
"{\"Creating\":[0,0,0,0,0,0,0,0,0,0,0]}," +
"{\"Not Specified\":[0,0,0,0,0,0,0,0,0,0,0]}]" +
"}";
System.Web.Script.Serialization.JavaScriptSerializer jSerializer =
new System.Web.Script.Serialization.JavaScriptSerializer();
AssessmentWCFVariables assessmentWCFVariable = jSerializer.Deserialize<AssessmentWCFVariables>(rigorSelection);
var rigorCounts = assessmentWCFVariable.Rigor;
,该数据被反序列化的是这样的类...
[Serializable]
[DataContract]
public class AssessmentWCFVariables
{
[DataMember]
public int StandardID { get; set; }
[DataMember]
public string StandardName { get; set; }
[DataMember]
public ArrayList ItemTypes { get; set; }
[DataMember]
public ArrayList Rigor { get; set; }
[DataMember]
public int TotalItemCount { get; set; }
}
UPDATE rigorCounts是对象的ArrayList。我可以循环每个对象,但是我尝试访问字典中的键/值对的所有内容都会给我一个错误。我正在努力做到这一点。
foreach (var rigor in rigorCounts)
{
var key = //code to get key of rigor i.e Remembering
var value = //code to get the arrary i.e. [0,0,0,0,0,0,0,0,0,0,0]
}
访问该数据的哪个部分是您遇到的问题? – 2014-12-04 14:44:27
我试过你的代码,看起来像是有效的。究竟是什么问题?你能添加更多细节吗? – 2014-12-04 14:44:55
AssessmentWCFVariables.Rigor成员的类型是什么? 例如,如果你这样做,输出是什么? 'AssessmentWCFVariables awv = [无论哪里来自]; object o = awv.Rigor [0]; System.Console.WriteLine((typeof o).ToString());' – 2014-12-04 14:46:06