大家帮我看看,指点一下吧.
下面是我的代码:
string sqlString=@"SELECT 小区所属市州, 小区X_deg, 小区X_min, 小区X_sec, 小区Y_deg, 小区Y_min, 小区Y_sec, 小区LAC号 FROM dbo.chengdu_cell WHERE (小区所属市州 = N'"+diqv+"')";
string connectStr="Data Source=localhost;Initial Catalog=MobileOLAP;User ID=sa;password=zaza";
SqlConnection conn=new SqlConnection(connectStr);
conn.Open();
SqlCommand cmd=new SqlCommand(sqlString,conn);
SqlDataReader reader=cmd.ExecuteReader();//执行到此句,出现问题,说是存在SqlDataReader连接,没有关闭
..................
conn.Close();问题:
SqlDataReader reader=cmd.ExecuteReader();//执行到此句,出现问题,说是存在SqlDataReader连接,没有关闭我只知道前面连接了数据库,但是具体,信息不知道,我能不能在这里关闭前面的连接,或者不关闭也可以执行reader=cmd.ExecuteReader()呢?请高手指点一下,不胜感激!

解决方案 »

  1.   

    那你用DataAdapter填充DataTable吧。但是DataReader用完不关闭,是不对的啊。
      

  2.   

    中间是否发生异常后退出,导致没有执行conn.close
    还有你可以调用dispose方法,强制是否试试看
      

  3.   

    程序执行到SqlDataReader reader=cmd.ExecuteReader()发生异常
    异常信息为:存在为关闭的SqlDataReader
      

  4.   

    换成OleDbDataReader 也出现同样的问题,困惑!
      

  5.   

    conn.Open();
    SqlCommand cmd=new SqlCommand(sqlString,conn);两句调一下试试:SqlCommand cmd=new SqlCommand(sqlString,conn);
    conn.Open();