【机房重构】ConnectionString属性尚未初始化

机房重构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>

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

【机房重构】ConnectionString属性尚未初始化

时间: 2024-11-05 16:00:48

【机房重构】ConnectionString属性尚未初始化的相关文章

System.InvalidOperationException: ConnectionString 属性尚未初始化。

C#使用OleDB操作ACCESS Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + NewFileName + ";User Id=uid;Jet OLEDB:Database Password=pwd;"; 完整错误信息: {System.InvalidOperationException: ConnectionString 属性尚未初始化. 在 System.Data.OleDb.OleDbConnection.Permi

ConnectionString属性尚未初始化

问题前因:使用动软代码生成的三成模板然后复制到相应的类库 动软生成的 sql帮助类 推荐的是DBsqlhelp 期间引用了:BLl层:Maticsoft.Common.dll DAl层:Maticsoft.DBUtility.dll 解决问题思路:百度全是配置文件错误:事实也是如此,但是却找不到到底哪里错了, 于是使用 IL Spy(反编译) DBUtility 所引用的sql帮助类 反编译之后 首先就找到了这个帮助类,一看原来web.config的配置文件使用的是  Appsettings这种

在调用“Fill”前,SelectCommand 属性尚未初始化

在调用“Fill”前,SelectCommand 属性尚未初始化 是因为少写了一行代码: private readonly string strConnection = System.Configuration.ConfigurationManager.AppSettings["ConnStr"].ToString(); private void Form1_Load(object sender, EventArgs e) { string a = "2"; str

如果分配给命令的连接位于本地挂起事务中,ExecuteReader 要求命令拥有事务。命令的 Transaction 属性尚未初始化

{System.InvalidOperationException: 如果分配给命令的连接位于本地挂起事务中,ExecuteReader 要求命令拥有事务.命令的 Transaction 属性尚未初始化. 在 System.Data.OleDb.OleDbConnectionInternal.ValidateTransaction(OleDbTransaction transaction, String method) 在 System.Data.OleDb.OleDbConnection.Va

假设分配给命令的连接位于本地挂起事务中,ExecuteReader 要求命令拥有事务。命令的 Transaction 属性尚未初始化

{System.InvalidOperationException: 假设分配给命令的连接位于本地挂起事务中.ExecuteReader 要求命令拥有事务.命令的 Transaction 属性尚未初始化. 在 System.Data.OleDb.OleDbConnectionInternal.ValidateTransaction(OleDbTransaction transaction, String method) 在 System.Data.OleDb.OleDbConnection.Va

自己写的SqlHelper,提示在调用&quot;Fill&quot;前,SelectCommand 属性尚未初始化.错误

namespace 操作数据{    class SqlHelper    {        public DataSet SqlTODs(string cmdstring)        {            DataSet ds = new DataSet();            try            {                string sqlstring = System.Configuration.ConfigurationManager.Connection

如果分配给命令的连接位于本地挂起事务中,ExecuteNonQuery 要求命令拥有事务。命令的 Transaction 属性尚未初始化

在 System.Data.OleDb.OleDbConnectionInternal.ValidateTransaction(OleDbTransaction transaction, String method) 在 System.Data.OleDb.OleDbConnection.ValidateTransaction(OleDbTransaction transaction, String method) 在 System.Data.OleDb.OleDbCommand.Validat

机房重构---MDI窗体+单例模式

在VB6.0版本的机房收费系统中就用到了MDI技术(多文档界面),其中有的窗体用了MDI,而有的则没有用到,回头想想这些个关于增删改查的功能都该是MDI这个容器中的子窗体,于是这次我将他们都放到了MDI窗体中. 一.关于MDI窗体 MDI窗体设置步骤: (1)在frmMain中打开属性窗格,"IsMdiContainer"属性设置为"True". (2)把工具箱中MenuStrip控件拖到frmMain中,创建菜单如图 由于最近敲的是"修改密码"

机房重构时利用状态模式实现消费时间的计算

在做机房重构时,我们会在学生上下机计算学生上机时间时,会出现消费时间随着基本数据设定表中的数据变化而变化,这里不仅仅是数据的变化,还包括不同时间段内消费时间具体确定问题.主要分为三个时间段的计算 1.准备时间:即在此时间段内,消费金额为0 2.至少上机时间:如果上机时间超过了准备时间,但是少于至少上机时间,那么此时消费时间为至少上机时间 3.按正常消费时间来算:此时,消费时间大于至少上机时间后,则按照正常时间来算 通过对业务的分析,我们发现在不同时间段,最终的消费时间的计算方式是不一样的.如果我