这是我的代码,报错
    public void Binds()
        {
            a.open();
                SqlCommand cmd = new SqlCommand();
                cmd.CommandText = "Parts_Data_Pages"; //存储过程名
                cmd.CommandType = CommandType.StoredProcedure;
                int pageindex = 0;
                string strWhere = "";
                if (AspNetPager1.CurrentPageIndex < 1)
                {
                    pageindex = 1;
                }
                else
                {
                    pageindex = AspNetPager1.CurrentPageIndex;
                }
                SqlParameter[] parameters ={
             new SqlParameter("@tblname",SqlDbType.VarChar,255),
             new SqlParameter("@strGetFields",SqlDbType.VarChar,1000),
             new SqlParameter("@fldName",SqlDbType.VarChar,255),
             new SqlParameter("@pagesize",SqlDbType.Int,4),
             new SqlParameter("@pageindex",SqlDbType.Int,4),
             new SqlParameter("@doCount",SqlDbType.Bit),
             new SqlParameter("@ordertype",SqlDbType.Bit),
             new SqlParameter("@strwhere",SqlDbType.VarChar,2000) 
            };
                parameters[0].Value = "Parts_Data";//数据表名称.
                parameters[1].Value = "*";//要显示的字段名
                parameters[2].Value = "Part_Code"; //主键
                parameters[3].Value = AspNetPager1.PageSize;//每页显示记录数
                parameters[4].Value = pageindex;//索引页
                parameters[5].Value = 0;//这里写死0就行了
                parameters[6].Value = 0;//这里的1是降序,0为升序
                parameters[7].Value = strWhere;//查询条件组合                foreach (SqlParameter p in parameters)
                {
                    cmd.Parameters.Add(p);
                }                SqlDataAdapter sda = new SqlDataAdapter(cmd);
                DataSet ds = new DataSet();
                sda.Fill(ds);
                DataList1.DataSource = ds.Tables[0].DefaultView;
                DataList1.DataBind();
                a.close();        }
报错 sda.Fill(ds); 这句,属性尚未初始化!

解决方案 »

  1.   

    a.open();
    SqlCommand cmd = new SqlCommand();
    cmd.CommandText = "Parts_Data_Pages"; //存储过程名
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Connection = a; //缺少这一句,补上即可
     int pageindex = 0;
      

  2.   

    肯定不行啊,我的a是数据库连接的,页面开头zz.ljsql a = new zz.ljsql();//创建类的实例namespace zz
    {
        /// <summary>
        ///ljsql 的摘要说明
        /// </summary>
        public class ljsql
        {
            public ljsql()
            {
                //
                //TODO: 在此处添加构造函数逻辑
                //
            }
            public SqlConnection connstr;   //连接字符串
            public string getconnstr()    //获取连接字符串
            {
                string constr;
                constr = System.Configuration.ConfigurationSettings.AppSettings["ConSql"];
                return constr;
            }
            public void open()      //打开数据库
            {
                string constr;
                constr = getconnstr();
                connstr = new SqlConnection(constr);
                connstr.Open();
            }
            public void close()      //关闭数据库
            {
                connstr.Dispose();
                connstr.Close();
            }
            public void execsql(string sql)   //执行sql语句
            {
                open();
                SqlCommand cmd = new SqlCommand(sql, connstr);
                cmd.ExecuteNonQuery();
                close();
            }
            public DataSet dataset(string sql)  //返回DataSet对象
            {
                open();
                SqlDataAdapter rs = new SqlDataAdapter(sql, connstr);
                DataSet ds = new DataSet();
                rs.Fill(ds);
                close();
                return ds;
            }
            public DataView dataview(string sql) //返回DataView对象
            {
                DataSet ds = new DataSet();
                ds = dataset(sql);
                DataView dv = new DataView(ds.Tables[0]);
                return dv;
            }
            public SqlDataReader datareader(string sql) //返回DataReader对象
            {
                open();
                SqlCommand cmd = new SqlCommand(sql, connstr);
                SqlDataReader dr = cmd.ExecuteReader();
                return dr;
            }    }
    }
      

  3.   

    属性尚未初始化!设置Connection啊。也可以用这种方法
    public static DataTable ReturnDataTable(string cmdtext)
        {
            SqlConnection cn = new SqlConnection();
            cn.ConnectionString = "数据库连接字符串";
            DataTable dt = new DataTable();
            SqlCommand cmd = new SqlCommand();
            cmd = new SqlCommand(cmdtext, cn);
            cmd.CommandType = CommandType.Text; ;
            SqlDataReader dr = null;
            using (dr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
            {
                dt.Load(dr);
            }
            return dt;    }绑定DataTable
      

  4.   

    a.open();
    SqlCommand cmd = new SqlCommand();
    cmd.CommandText = "Parts_Data_Pages"; //存储过程名
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Connection = a.getconnstr(); //缺少这一句,补上即可
     int pageindex = 0;
      

  5.   

    我的个乖乖,唉,你实例化的话,你不知道这样????a.open();
    SqlCommand cmd = new SqlCommand();
    cmd.CommandText = "Parts_Data_Pages"; //存储过程名
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Connection = a.connstr; //缺少这一句,补上即可
     int pageindex = 0;
      

  6.   

      SqlDataAdapter sda = new SqlDataAdapter(cmd);
                    DataSet ds = new DataSet();
                    sda.Fill(ds);
                    DataList1.DataSource = ds.Tables[0].DefaultView;
                    DataList1.DataBind();
                    a.close();==>
     SqlDataReader dr = null;
    DataTable dt;
            using (dr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
            {
                dt.Load(dr);
            }DataList1.DataSource = dt;
    DataList1.DataBind();
    a.close();
      

  7.   

    在你的类中增加一个方法用来返回一个可用的SqlConnection对象。       public SqlConnection connstr;   //连接字符串
            public string getconnstr()    //获取连接字符串
            {
                string constr;
                constr = System.Configuration.ConfigurationSettings.AppSettings["ConSql"];
                return constr;
            }       //增加这样一个方法,用来返回SqlConnection对象
           public SqlConnection getSqlConnection()
           {
                  connstr = new SqlConnection(getconnstr());
                  return connstr;
           }
            public void open()      //打开数据库
            {
                string constr;
                constr = getconnstr();
                connstr = new SqlConnection(constr);
                connstr.Open();
            }
            public void close()      //关闭数据库
            {
                connstr.Dispose();
                connstr.Close();
            }a.open();
    SqlCommand cmd = new SqlCommand();
    cmd.CommandText = "Parts_Data_Pages"; //存储过程名
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Connection = a.getSqlConnection(); //缺少这一句,补上即可,这样应该没有问题了
     int pageindex = 0;
      

  8.   


    SqlDataAdapter sda = new SqlDataAdapter(cmd, a.connstr);//这样试试
    DataSet ds = new DataSet();
    sda.Fill(ds);