DB_Conn.cs文件:
public class Conn_DB
    {
        //定义一个连接对象
        public SqlConnection Conn;
        //打开数据库连接
        public void DB_Open()
        {
            SqlConnection Conn = new SqlConnection("Server=.;Uid=sa;Pwd=;DataBase=NorthWind");
            Conn.Open();
        }
        //关闭数据库连接
        public void DB_Close()
        {
            Conn.Close();
        }
    }gridview.aspx.cs文件:
            Conn_DB CD = new Conn_DB();
            SqlDataAdapter sda = new SqlDataAdapter("Select * From Customers", CD.Conn);
            DataSet DS = new DataSet();
            sda.Fill(DS, "Customers");
            GridView1.DataSource = DS.Tables[0].DefaultView;
            GridView1.DataBind();
            CD.DB_Close();老是提示SelectCommand.Connection尚未初始化!!

解决方案 »

  1.   

    DB_Open() 这个不是构造函数 又不调用
      

  2.   

    你为何要定义 public SqlConnection Conn;
      

  3.   

    public void DB_Open()
            {
                 Conn = new SqlConnection("Server=.;Uid=sa;Pwd=;DataBase=NorthWind");
                Conn.Open();
            }
      

  4.   

    public SqlConnection  GetConn()
            {
                SqlConnection Conn = new SqlConnection("Server=.;Uid=sa;Pwd=;DataBase=NorthWind");
               return Conn;
               
            }
    SqlDataAdapter sda = new SqlDataAdapter("Select * From Customers", CD.GetConn());
      

  5.   

    gridview.aspx.cs文件:
                Conn_DB CD = new Conn_DB();
                CD.DB_Open()            SqlDataAdapter sda = new SqlDataAdapter("Select * From Customers", CD.Conn);
                DataSet DS = new DataSet();
                sda.Fill(DS, "Customers");
                GridView1.DataSource = DS.Tables[0].DefaultView;
                GridView1.DataBind();
                CD.DB_Close();
      

  6.   

    还有你已经定义了
    public SqlConnection Conn;//为公有成员变量
    你还在
     public void DB_Open()
            {
                SqlConnection Conn = new SqlConnection("Server=.;Uid=sa;Pwd=;DataBase=NorthWind");//这里定义局部变量?
                Conn.Open();
            }