提示的很明显呀,连接未关闭。
s.Connection = DBHelper.con;
DBHelper.con.Open();
            SqlDataReader r = s.ExecuteReader();
            while (r.Read())
            {
                sa = r["RoomID"].ToString();
                comboBox1.Items.Add(sa);
            }
 
            r.Close();
            DBHelper.con.Close();
s.Connection  关闭了么?

解决方案 »

  1.   

      可以在打开前判断下,开启状态,未开启再开启。
      
      用完要Close连接
      

  2.   

    DBHelper是个静态类
    你确定构造函数里没有执行open吗
    感觉你这个类写的毛病太多了
      

  3.   

    将你连接数据库的代码写在using代码块中,一切搞定。如:
    using(SqlConnction con=new SqlConnction ())
    {
           --这里写数据库相关操作的东西,这样就不用每次打开数据库之后还要关闭数据库了
    }
      

  4.   

    对啊,直接用using 多方便啊,也不用担心会不会关闭
      

  5.   

    使用try catch finally结构来写,finally里面关闭连接,就不怕忘记关闭了。或者如楼上说的,using
      

  6.   

    将数据表中的字段添加到ComboBox
     private void btn_Add_Click(object sender, EventArgs e)
            {
                cbox_Display.DataSource =//绑定到数据表中的数据
                    new DataTier().GetMessage();
                    cbox_Display.DisplayMember = "book";//设置显示属性
                    cbox_Display.ValueMember = "count";//设置实际值
            }