C#多重泛型如何调用
public class ManagerHelper
{
public static Dictionary<string, Class> School=new Dictionary<string,Class> ();
}
-----------------------------------------------------------------------------------
public class Class
{
private string className;
public string ClassName
{
get { return className; }
set { className = value; }
}
private DateTime classStartTime;
public DateTime ClassStartTime
{
get { return classStartTime; }
set { classStartTime = value; }
}
private DateTime classEndTime;
public DateTime ClassEndTime
{
get { return classEndTime; }
set { classEndTime = value; }
}
private Dictionary<int, Student> students;
public Dictionary<int, Student> Students
{
get { return students; }
set { students = value; }
}
}
------------------------------------------------------------------------------------
public class Student
{
private int studentNum;
public int StudentNum
{
get { return studentNum; }
set { studentNum = value; }
}
private string studentName;
public string StudentName
{
get { return studentName; }
set { studentName = value; }
}
private string studentSex;
public string StudentSex
{
get { return studentSex; }
set { studentSex = value; }
}
private string studentRace;
public string StudentRace
{
get { return studentRace; }
set { studentRace = value; }
}
private string studentAddress;
public string StudentAddress
{
get { return studentAddress; }
set { studentAddress = value; }
}
private string studentPhone;
public string StudentPhone
{
get { return studentPhone; }
set { studentPhone = value; }
}
private string studentPostaCode;
public string StudentPostaCode
{
get { return studentPostaCode; }
set { studentPostaCode = value; }
}
private string className;
public string ClassName
{
get { return className; }
set { className = value; }
}
}
如何调用这个学生类里的东西呢? 多重泛型 --------------------编程问答-------------------- var dict = new Dictionary<int, Student>();
var student1 = new Student();
student1.xxx = xxx;
...
dict.Add(1, student1);
var student2 = new Student();
student2.xxx = xxx;
...
dict.Add(2, student2);
Class c = new Class();
c.students = dict;
c.xxx = xxx;
...
ManagerHelper.School.Add("某某学校", c); --------------------编程问答-------------------- 关注一下. --------------------编程问答--------------------
我现在想查询sutdent里面的所有学生信息怎么办呢? --------------------编程问答-------------------- foreach(KeyValuePair<String, Class> school in ManagerHelper.School)
{
foreach(KeyValuePair<String, Student> student in school.Students)
{
Console.WriteLine(student.StudentNum);
}
} --------------------编程问答--------------------
不好意思上面失误了,不就就是字典嵌套吧, 和范型有半毛钱关系呀
foreach(KeyValuePair<String, Class> school in ManagerHelper.School)
{
foreach(KeyValuePair<String, Student> student in school.Value.Students)
{
Console.WriteLine(student.Value.StudentNum);
}
} --------------------编程问答--------------------
var query = ManagerHelper.School.SelectMany(x => x.Value.students).Where(x => 条件);
补充:.NET技术 , C#