sql数据访问层中的方法选择

时间:2013-09-13 16:02:35

标签: c# asp.net sql sql-server data-access-layer

我想分享我组织代码的风格(我想我是从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,然后每个学生我需要再次连接数据库以获取每个学生的数据。我想我应该用一个方法和单个数据库调用来处理这个问题,对吗?

0 个答案:

没有答案