由于之前在三层的时候没使用配置文件App.config,因此并没有特别注意大小写问题,在调试七层登陆时无意间改成大写的了,再调试的过程中始终报错。
“System.TypeInitializationException”类型的未经处理的异常在 LoginDAL.dll 中发生
其他信息: “sqlHelper.sqlHelper”的类型初始值设定项引发异常。
于是开始百度查这个问题,最先看到的是个把APP.config复制到登陆项目下,就可以运行了,回答者说是类的静态变量初始化出错了,让看看静态结构函数是不是有问题,可是自己看不出来。断点调试显示ConfigurationManager.AppSettings("connstring")=Nothing
之前尝试不从配置文件中获取连接字符串,直接写在程序里一般就
可以,但性能就大打折扣了。Public Shared ConnString As String = "Server=DESKTOP-A8LHMG6\BIWORK2012;Database=机房重构;User ID=sa;Password=zjc"最终看到了解决问题的最终答案:
此刻恍然大悟,打开设计模式书认真发到抽象工厂模式那一章,看着App.config的格式,如下图中的蓝色部分。我的配置文件里写成大写了再一步步的调试就成功了。
<span style="font-size:18px;"><span style="font-size:18px;"><?xml version="1.0" encoding="utf-8" ?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> </startup> <appSettings> <add key="connstring" value="Server=DESKTOP-A8LHMG6\BIWORK2012;Database=机房重构;User ID=sa;Password=zjc"/> </appSettings> </configuration></span></span>
应用程序配置文件是标准的 XML 文件,XML 标记和属性是区分大小写的。它是可以按需要更改的,开发人员可以使用配置文件来更改设置,而不必重编译应用程序。配置文件的根节点是configuration。我们经常访问的是appSettings,它是由.Net预定义配置节。还有注意的问题就是等于号的两边不要加上空格。
讲解不错 配置文件
一步一步教你玩转.NET Framework的配置文件app.config
注意引用:
1,引用命名空间:using System.Configuration;
2,System.Configuratio的命名控件需要你手动引入你的项目中,右键你的项目--》添加引用-》在弹出的引用框中,在.net引用下找到System.Configuration-》确定
3,在操作第三步之前确保前两步缺一不可.
public string connectionstring = System.Configuration.ConfigurationManager.ConnectionStrings("ConnectionString").ToString();
string strConn = System.Configuration.ConfigurationManager.ConnectionStrings["strConnection"].ConnectionString;