cstw18
级别: 略有小成
精华主题: 0
发帖数量: 282 个
工控威望: 325 点
下载积分: 6657 分
在线时间: 121(小时)
注册时间: 2024-03-25
最后登录: 2025-08-23
查看cstw18的 主题 / 回贴
楼主  发表于: 6天前
  这段代码,运行到WHILE时,会提示阅读器关闭,无法read。为什么阅读器会关闭呢?求解释
public   List<StudentClass> GetAllClasses()
  {
  String Sql = "select ClassID,ClassName from StudentClass ";
  SqlDataReader objDataReader = SQLHelper.GetReader(Sql);
    
  List<StudentClass> list = new List<StudentClass>();
       while (objDataReader.Read())--------就是这一步
      {
          list.Add(new StudentClass
          {
              ClassID = Convert.ToInt32(objDataReader["ClassID"]),
              ClassName = Convert.ToString(objDataReader["ClassName"])
          });
        
          


      }
      objDataReader.Close();
      return list;

  }
1105250205
级别: 家园常客
精华主题: 0
发帖数量: 74 个
工控威望: 640 点
下载积分: 905 分
在线时间: 115(小时)
注册时间: 2021-07-21
最后登录: 2025-08-25
查看1105250205的 主题 / 回贴
1楼  发表于: 6天前
objDataReader依赖于数据库连接,大概率是数据库连接关闭了
cstw18
级别: 略有小成
精华主题: 0
发帖数量: 282 个
工控威望: 325 点
下载积分: 6657 分
在线时间: 121(小时)
注册时间: 2024-03-25
最后登录: 2025-08-23
查看cstw18的 主题 / 回贴
2楼  发表于: 5天前
引用
引用第1楼1105250205于2025-08-20 16:21发表的  :
objDataReader依赖于数据库连接,大概率是数据库连接关闭了

果然 ,我把连接关闭的句子注释掉,就好了
大神厉害!!!