“ConnectionString属性尚未初始化”问题解析

发布时间:2025-12-09 16:27:59 浏览次数:4

首先上一个自定义的方法:

        public DataSet Exselect(string strcomm)
        {
            con.Open();//打开数据连接
            comm.CommandType = CommandType.Text;//指定查询命令类型
            comm.CommandText = strcomm;//指定查询命令
            comm.Connection = con;//指定连接对象
            sqlda.SelectCommand = comm;//适配器指定连接对象
            DataSet ds = new DataSet();//定义数据集
            sqlda.Fill(ds);//填充数据集
            return ds;//返回数据集
        }

 出现“ConnectionString属性尚未初始化”,原因有两个;

1、没有指定连接对象,也就是少了这句

sqlda.SelectCommand = comm;//适配器指定连接对象

2、在调用这个语句前,有对数据库进行操作,但是进行了Dispose();

comm.Dispose();
con.Dispose();
sqlda.Dispose();

 因为在Dispose();后时无法再次打开数据库的,所以这个语句在最后退出时加上就行,临时的关闭数据库用Close();即可;

 comm.Close();
 con.Close();
 sqlda.Close();

再者,在操作数据库前,加上判断语句,防止异常:

            if (con.State != ConnectionState.Open)//判断状态
            {
                con.Open();//打开数据连接
            }

需要做网站?需要网络推广?欢迎咨询客户经理 13272073477