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

【机房重构】“ConnectionString属性尚未初始化”「建议收藏」机房重构ing。在每个学习中一直陪伴我们左右的,还是那些大大小小的问题,正因为它们的存在,才让我们的学习有了收获,有了纠结,也有了乐趣。这几天一直在研究sqlhelper和泛型集合的使用,很那什么的说,纠结了几天,今天算是有点结果了,但是结果永远不会轻松而至,看,问题又来了。

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

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

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

    附图一张:

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

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

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

分析:

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

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

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

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

    正确如下:

<?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>

    

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

  

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

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

(2)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux tar压缩排除某个文件夹

    linux tar压缩排除某个文件夹一般直接用tar命令打包很简单,直接使用tar-zcvftest.tar.gztest即可。在很多时候,我们要对某一个目录打包,而这个目录下有几十个子目录和子文件,我们需要在打包的时候排除其中1、2个目录。这时候我们在用tar命令打包的时候,增加参数–exclude就能达到目的。例如:我们以tomcat为例,打包的时候我们要排除tomcat/logs目

    2022年5月9日
    141
  • java程序编译命令_使用 java 命令编译运行 java 程序

    java程序编译命令_使用 java 命令编译运行 java 程序java编译的过程,就是将java项目从源文件变成.class文件的过程,而.class文件,最后会被加载到JVM中运行。在JDKbin/目录下,提供了javac命令,用于将.java源文件编译成.class字节码文件,提供了java命令,以Main_Class为入口,根据运行需要,加载相应的class文件到JVM中执行。关于环境变量如果在没有引用…

    2022年7月8日
    24
  • jaxen.jar下载地址

    jaxen.jar下载地址最近在写XML文件的时候需要用到这个jar包,但是在网上下载的时候贼慢,于是在csdn上找但是都要收费,最后终于找到了,现在分享给你们。不要谢,请叫我雷锋!《jaxen》jar包下载地址…

    2022年7月26日
    27
  • SqlSessionTemplate是如何保证MyBatis中SqlSession的线程安全的?「建议收藏」

    SqlSessionTemplate是如何保证MyBatis中SqlSession的线程安全的?「建议收藏」一、DefaultSqlSession的线程不安全性在MyBatis架构中SqlSession是提供给外层调用的顶层接口,实现类有:DefaultSqlSession、SqlSessionManager以及mybatis-spring提供的实现SqlSessionTemplate。默认的实现类为DefaultSqlSession如。类图结构如下所示:对于MyBatis提供的原生实现类来…

    2022年5月31日
    35
  • django动态路由_路由器可以当转换器用吗

    django动态路由_路由器可以当转换器用吗自定义路径转换器有时候上面的内置的url转换器并不能满足我们的需求,因此django给我们提供了一个接口可以让我们自己定义自己的url转换器django内置的路径转换器源码解析在我们自定义路由转

    2022年8月7日
    6
  • javascript 数组复制「建议收藏」

    javascript 数组复制「建议收藏」javascript数组复制数组不能直接等于一个数组例如vararr=arr1数组是内置对象,存储的是数组的地址,这样复制就等于复制了地址,更改一个数组的值,另一个也会更改复制方法slice()数组截取vararr=[1,2,3]vararr2=arr.splice();…

    2022年7月14日
    13

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号