读取app.config值:
string configFile =
System.Configuration.ConfigurationManager.AppSettings["connStr"].ToString();
配置文件:
<appSettings>
<add key="connStr" value="Data Source=Dolphin-PC;
Initial Catalog=jsptpd_SYS;
Persist Security Info=True;User ID=sa;
Password=ccir"/>
</appSettings>
收到错误:
Object reference not set to an instance of an object
\ program和debug \文件夹包含app.config文件。
答案 0 :(得分:2)
为什么会发生这种情况
因为,System.Configuration.ConfigurationManager.AppSettings["connStr"]
为空
我怎么处理它?</ p>
更有效的问题。这里的代码没有任何问题。您发现它为null的主要原因可能是因为您运行应用程序的目录中没有app.config。这可能是因为app.config是某个库的一部分,并且它没有被复制到输出目录。您需要确保app.config位于主项目中,或者将其明确复制到目录(您正在运行应用程序)。
答案 1 :(得分:2)
要解决此问题,您需要知道ConfigurationManager的princeple如何读取配置文件:
http://msdn.microsoft.com/en-us/library/system.configuration.configurationmanager.aspx
要解决此问题,您可以确保bin /目录生成 yourprogram.exe.config 文件,以便ConfigurationManager可以读取。
如果缺少此文件,请确保您的app.config属性生成操作不是嵌入资源。如果是,则app.config将嵌入到exe文件中,而配置管理器则无法读取。