解决“c#:未将对象引用设置到对象的实例”

在用c#操作数据库的时候遇到了该问题,由此记录一下解决方法:
在这里插入图片描述
调试的时候无法连接到数据库,提示“未将对象引用设置到对象的实例”。我查看我的代码,本来想的是“没问题啊,明明已经将数据库连接语句实例化了”。知道后来我单步调试查看变量的值,才发现了问题所在:
在这里插入图片描述
看到了没,有两个mysqcon,继续调试,发现:
在这里插入图片描述
一个被赋值了,即实例化,而另一个,仍旧为空。说明我的代码里有两个mysqlcon。再来看看我原来的代码

在这里插入代码片
   MySqlConnection mysqlcon = null;
        //构造函数,用来给database类传递参数
        public database(string s)
        {
            //this.connString = s;
            //this.mysqlcon = new MySqlConnection(s);
            MySqlConnection mysqlcon = new MySqlConnection(s);
        }

问题就出在代码里,原本类的成员变量里有一个mysqlcon ,而在构造函数里面我又新建了一个mysqlcon,虽然名字看起来一样,但实际上是两个不同的对象,由此找到了问题所在。

解决办法

说来也简单,在构造函数里面去掉自己定义的那个mysqlcon对象,用this.mysqlcon代替,这样就只有一个mysqlcon,程序不会报错了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值