需要实现一个 ADD的静态扩展方法,否则 无法使用构造函数添加数据
public class Enrollment : IEnumerable<Student>
{
private List<Student> allStudents = new List<Student>();
public void Enroll(Student s)
{
allStudents.Add(s);
}
public IEnumerator<Student> GetEnumerator()
{
return ((IEnumerable<Student>)allStudents).GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
{
return ((IEnumerable<Student>)allStudents).GetEnumerator();
}
}
public class ClassList
{
public Enrollment CreateEnrollment()
{
var classList = new Enrollment()
{
new Student("Lessie", "Crosby"),
new Student("Vicki", "Petty"),
new Student("Ofelia", "Hobbs"),
new Student("Leah", "Kinney"),
new Student("Alton", "Stoker"),
};
return classList;
}
}
public static class StudentExtension
{
public static void Add(this Enrollment e, Student s)
{
e.Enroll(s);
}
}
public class Student
{
private string LastName { get; set; }
public Student(string firstName, string lastName)
{
FirtsName = firstName;
LastName = lastName;
}
public string FirtsName { get; private set; }