【发布时间】:2013-04-17 02:13:02
【问题描述】:
我有一个教室列表,然后我得到那个教室里的学生列表。在这个方法中,我首先创建了一个 ClassRoom 列表。然后我得到那个教室里的学生名单。现在,当我尝试将学生列表添加到第一个列表时。我收到此错误。
List 的最佳重载方法匹配...具有无效参数
public static List<MyList> getRecords()
{
int id = 10;
int id2 = 20;
List<MyList> ClassRooms = GetClassRooms(id);
foreach(MyList Students in ClassRooms)
{
List<MyList> studentProfile = GetStudentProfile(id, Students.ID);
foreach(MyList studentDetail in studentProfile) ClassRooms.Add(studentDetail);
}
return ClassRooms;
}
我做错了什么?
更新 -
public class MyList
{
public int ID;
public string Class Number;
public bool Active;
public int StudentID;
public string FirstName;
public string LastName;
public int TotalStudents;
}
【问题讨论】:
-
天哪,这太伤痕累累了
-
@AndreCalil:可怕还是伤痕累累?
-
尽管名称令人困惑,但存在一个问题:您无法在迭代列表时修改列表(例如添加新项目),就像使用
ClassRooms所做的那样。 -
那么,
ClassRooms是MyList类型的列表,可以是学生或学生详细信息?无论如何,安德烈是正确的。您在向列表添加新项目的同时迭代列表,这是行不通的。 -
确实,你应该有一个
Class类和一个Student类。Class将有一个List<Student>。