配置文件app.config怎么调用呢?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了配置文件app.config怎么调用呢?相关的知识,希望对你有一定的参考价值。
string str=System.Configuration.ConfigurationSettings.AppSettings["connection"].ToString();//app.config中设置key="connection"
我是这样调用的,但是报错:未将对象引用设置到对象的实例;
此外,还有一个警告,说:未声明“key”属性
不知道哪里错了呐?谢谢大家
string str=System.Configuration.ConfigurationManager["connection"].ToString();//connection是配置文件中的name
SQLConnection con=new SQLConnection(str);
app.config中设置如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add connectionString="Data Source=Lilith-PC\SQL2005;Initial Catalog=ManagementSoftware;Integrated Security=True" name="connection"/>
</connectionStrings>
</configuration>
此外,注意app.config要放在表示层里 参考技术A app.config格式如下(必须放在configuration\appSettings下面):
<configuration>
<appSettings>
<add key="DebugLevel" value="Debug" />
</appSettings>
</configuration>
C#代码如下:
using System.Configuration;
然后使用下面代码调用
string DebugLevel = ConfigurationManager.AppSettings.Get("DebugLevel");
注意在project的引用中增加System.Configuration,这个需要手工增加的 参考技术B 这样调用:
string str=System.Configuration.ConfigurationManager["connection"].ToString();//connection是配置文件中的name
SQLConnection con=new SQLConnection(str);
app.config中设置如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add connectionString="Data Source=Lilith-PC\SQL2005;Initial Catalog=ManagementSoftware;Integrated Security=True" name="connection"/>
</connectionStrings>
</configuration>
此外,注意app.config要放在表示层里
如何让 ConfigurationManager 读取 app.config 以外的配置文件?
【中文标题】如何让 ConfigurationManager 读取 app.config 以外的配置文件?【英文标题】:How to make ConfigurationManager read a config file other than app.config? 【发布时间】:2011-02-17 14:06:44 【问题描述】:我需要解析位于另一个项目中的配置文件。我知道 ConfigurationManager 默认会读取 app.config 文件,但是如何让它读取特定的配置文件呢?
【问题讨论】:
默认情况下,应用程序从具有应用程序入口点的项目中读取配置文件。如果您想从项目中的配置文件中读取,请使用 [ConfigurationManager.OpenMappedExeConfiguration][0] 方法。这是使用此方法的minimal reproducible example[1]。 [0]:msdn.microsoft.com/en-us/library/ms134269.aspx [1]:dotnetanalysis.blogspot.com/2012/08/… 【参考方案1】:或者像这样:
var fileMap = new ConfigurationFileMap(configFilePath);
Configuration config = ConfigurationManager.OpenMappedMachineConfiguration(fileMap);
但是您仍然会遇到自定义配置部分的问题。
【讨论】:
【参考方案2】:// Create a filemap refering the config file.
ExeConfigurationFileMap fileMap = new ExeConfigurationFileMap();
fileMap.ExeConfigFilename = configFilePath;
// Retrieve the config file.
Configuration configuration = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);
【讨论】:
以上是关于配置文件app.config怎么调用呢?的主要内容,如果未能解决你的问题,请参考以下文章
C#app.config配置文件多组<appSettings>怎么办?