大家好,又见面了,我是你们的朋友全栈君。
机房重构ing。在每个学习中一直陪伴我们左右的,还是那些大大小小的问题,正因为它们的存在,才让我们的学习有了收获,有了纠结,也有了乐趣。
这几天一直在研究sqlhelper和泛型集合的使用,很那什么的说,纠结了几天,今天算是有点结果了,但是结果永远不会轻松而至。
附图一张:
错误提示:ConnectionString属性尚未初始化。因为它的出现让我再次开始了1小时多的百度之旅,查查查!下面
就总结一下这个问题。供大家参考,有不对的,希望看到的人,留下评论!
分析:
属性尚未初始化,说明在使用它之前没有给它赋值。
第一步.首先我们可以断点调试,看看是否给它赋值,在实践之后发现结果如下:
第二步. 上图的错误,说明可能是数据连接那里出错,转去查看配置文件中数据连接字符串是否正确。
正确如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key= "Connstr" value="Server=hcy-PC;Database=Charge;User ID=sa;password=123456"/>
</appSettings>
</configuration>
再次运行之后,Connstr有值了,但结果还是错误。
第三步. 查看编写的代码,是否有逻辑错误或是书写错误的情况。
错误示范:这样写,在执行的时候,就会刚实例化一个Conn,然后又新创建了一个Conn,就出现了上述的错误提示。
当然大家还要注意第一行代码是否正确。从查资料发现,这里是大家很容易出错的地方。
Private ReadOnly ConnStr As String = ConfigurationManager.AppSettings("ConnStr")
<span style="color:#ff0000;"> Dim Conn As New SqlConnection(ConnStr)</span>
<span style="color:#ff0000;">
Public Sub New()
Conn = New SqlConnection
End Sub</span>
正确示例:
第一种:在定义Conn时,就直接初始化它。
<span style="font-size:18px;"><span style="font-family:KaiTi_GB2312;">Private ReadOnly ConnStr As String = ConfigurationManager.AppSettings("ConnStr")
<span style="color:#333333;"> </span><span style="color:#ff0000;">Dim Conn As New SqlConnection(ConnStr) </span></span></span>
第二种:先定义,再定义一个构造函数New去实例化它。
<span style="font-size:18px;">Private ReadOnly ConnStr As String = ConfigurationManager.AppSettings("ConnStr")
<span style="color:#ff0000;"> Dim Conn As New SqlConnection
Public Sub New()
Conn = New SqlConnection(ConnStr)
End Sub</span></span>
遇到的错误越多,我们从解决问题的过程中就学到的越多。学到的不仅是知识,还有对于问题的态度,从开始的害怕到现在的接受问题,解决问题。这何尝不是一种进步呢?
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/159745.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...