我跟随json ..我将我的json转换为objectclass并获得subjectid和class id循环,但它不起作用。我想要subjectid和classid请帮助我怎么做。我是c的新人#请帮助我我非常感谢你们
[{
"teacherid": 1,
"teachername": "Addi Teacher",
"class": {
"class_id": 2,
"class_name": "Class 9"
},
"subjecname": {
"subject_id": 2,
"Subject_Name": "chemistry"
},
"$$hashKey": "object:10"
}, {
"teacherid": 1,
"teachername": "Addi Teacher",
"class": {
"class_id": 2,
"class_name": "Class 9"
},
"subjecname": {
"subject_id": 4,
"Subject_Name": "Science"
},
"$$hashKey": "object:12"
}, {
"teacherid": 1,
"teachername": "Addi Teacher",
"class": {
"class_id": 2,
"class_name": "Class 9"
},
"subjecname": {
"subject_id": 3,
"Subject_Name": "P.Study"
},
"$$hashKey": "object:14"
}]
//c# class
public class Class
{
public int class_id { get; set; }
public string class_name { get; set; }
}
public class Subjecname
{
public int subject_id { get; set; }
public string Subject_Name { get; set; }
}
public class RootObject
{
public int teacherid { get; set; }
public string teachername { get; set; }
public Class @class { get; set; }
public Subjecname subjecname { get; set; }
public string __invalid_name__$$hashKey { get; set; }
}
// code
subjectobject objsub = new JavaScriptSerializer().Deserialize<subjectobject>(jsonstring);
答案 0 :(得分:0)
执行以下步骤以实现您的需求:
以下是您的代码:
var obj = JsonConvert.DeserializeObject<Rootobject>("your json");
var result = obj.Property1.Select(x =>
new { ClassId = x._class.class_id, SubjectId = x.subjecname.subject_id });
顺便说一下,这就是我的链接答案将为您生成的内容:
public class Rootobject
{
public Class1[] Property1 { get; set; }
}
public class Class1
{
public int teacherid { get; set; }
public string teachername { get; set; }
public Class2 _class { get; set; }
public Subjecname subjecname { get; set; }
public string hashKey { get; set; }
}
public class Class2
{
public int class_id { get; set; }
public string class_name { get; set; }
}
public class Subjecname
{
public int subject_id { get; set; }
public string Subject_Name { get; set; }
}