我想分享我组织代码的风格(我想我是从ASP.net Pet Store示例应用程序中学到的),并希望得到您的建议。
我有SQLServerDAL子项目用于sql操作,我也使用sqlhelper类。举个例子,如果我要返回学生对象列表(即List学生),我有两种方法:
public StudentInfo GetStudent(Guid studentId)
{
StudentInfo s = new StudentInfo();
s.Name = reader.getString(0);
return s;
}
public List<StudentInfo> GetStudents(Guid studentId)
{
List<StudentInfo> studentlist;
while(reader.read())//This just returns the ids of students
{
StudentInfo s = new StudentInfo();
s = GetStudent( reader.GetGuid(1)); //this recalls the above function
studentlist.Add(s);
}
return studentlist;
}
这对我来说听起来很荒谬,因为我必须连接数据库两次,一次获得所有学生的ID,然后每个学生我需要再次连接数据库以获取每个学生的数据。我想我应该用一个方法和单个数据库调用来处理这个问题,对吗?