我已经返回这一个API:反序列化多行与DataContractJsonSerializer类
{
"CODE": 200,
"EXAMS_LIST": {
"0": {
"CFU": " 9",
"RESULT": "SOSTENUTO",
"SSD": " MAT/05",
"TAF": " A",
"TEACHING": "MATEMATICA I CFU 9",
"YEAR": 1
},
"1": {
"CFU": " 4",
"RESULT": "Sufficiente",
"SSD": " L-LIN/12",
"TAF": " E",
"TEACHING": "LINGUA INGLESE (COLLOQUIO)",
"YEAR": 1
},
"2": {
"CFU": " 6",
"RESULT": "SOSTENUTO",
"SSD": " FIS/01",
"TAF": " A",
"TEACHING": "FISICA CFU 6",
"YEAR": 1
},
...........
"22": {
"CFU": " 5",
"RESULT": " ",
"SSD": " ",
"TAF": " E",
"TEACHING": "PROVA FINALE CFU 5",
"YEAR": 3
}
}
我试图解析它丝毫DataContractJsonSerializer类......我maked支持类是这样的:
[DataContract]
public class Exam
{
[DataMember(Name = "CFU", IsRequired = true)]
private string cfu;
[DataMember(Name = "RESULT", IsRequired = true)]
private string result;
[DataMember(Name = "SSD")]
private string ssd;
[DataMember(Name = "TAF")]
private string taf;
[DataMember(Name = "TEACHING", IsRequired = true)]
private string teaching;
[DataMember(Name = "YEAR", IsRequired = true)]
private string year;
public string Cfu
{
get { return cfu; }
set { cfu = value; }
}
.........
public string Year
{
get { return year; }
set { year = value; }
}
}}
[DataContract]
public class StudyPlanResponse
{
[DataMember(Name="CODE")]
public string Code {get;set;}
[DataMember(Name = "EXAMS_LIST")]
public ExamList Exams { get; set; }
}
[DataContract]
public class ExamList
{
[DataMember(Name = "0")]
public Exam ex0 { get; set; }
[DataMember(Name = "1")]
public Exam ex1 { get; set; }
............
[DataMember(Name = "30")]
public Exam ex30 { get; set; }
}
如果我使用列表,它不起作用......并以这种方式,解析是非常缓慢......有没有解决方案?在此先感谢
您是否特别需要为此使用'DataContractSerializer'? JSON.Net将相当简单地反序列化成一个'Dictionary'。 – Corey
我会试试看,谢谢! –