前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【机房重构】“ConnectionString属性尚未初始化”「建议收藏」

【机房重构】“ConnectionString属性尚未初始化”「建议收藏」

作者头像
全栈程序员站长
发布2022-09-14 12:34:11
1.9K0
发布2022-09-14 12:34:11
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

机房重构ing。在每个学习中一直陪伴我们左右的,还是那些大大小小的问题,正因为它们的存在,才让我们的学习有了收获,有了纠结,也有了乐趣。

这几天一直在研究sqlhelper和泛型集合的使用,很那什么的说,纠结了几天,今天算是有点结果了,但是结果永远不会轻松而至。

附图一张:

【机房重构】“ConnectionString属性尚未初始化”「建议收藏」
【机房重构】“ConnectionString属性尚未初始化”「建议收藏」

错误提示:ConnectionString属性尚未初始化。因为它的出现让我再次开始了1小时多的百度之旅,查查查!下面

就总结一下这个问题。供大家参考,有不对的,希望看到的人,留下评论!

分析:

属性尚未初始化,说明在使用它之前没有给它赋值。

第一步.首先我们可以断点调试,看看是否给它赋值,在实践之后发现结果如下:

【机房重构】“ConnectionString属性尚未初始化”「建议收藏」
【机房重构】“ConnectionString属性尚未初始化”「建议收藏」

第二步. 上图的错误,说明可能是数据连接那里出错,转去查看配置文件中数据连接字符串是否正确。

正确如下:

代码语言:javascript
复制
<?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,就出现了上述的错误提示。

当然大家还要注意第一行代码是否正确。从查资料发现,这里是大家很容易出错的地方。

代码语言:javascript
复制
Private ReadOnly ConnStr As String = ConfigurationManager.AppSettings("ConnStr")
  <span style="color:#ff0000;">  Dim Conn As New SqlConnection(ConnStr)</span>
代码语言:javascript
复制
<span style="color:#ff0000;">
    Public Sub New()
        Conn = New SqlConnection
    End Sub</span>

正确示例:

第一种:在定义Conn时,就直接初始化它。

代码语言:javascript
复制
<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去实例化它。

代码语言:javascript
复制
<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>

遇到的错误越多,我们从解决问题的过程中就学到的越多。学到的不仅是知识,还有对于问题的态度,从开始的害怕到现在的接受问题,解决问题。这何尝不是一种进步呢?

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/159745.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档