C# 如何读取web.config文件中的appSettings部分?
我的XML看起来像这样,文件名是C# 如何读取web.config文件中的appSettings部分?,c#,asp.net,web-config,C#,Asp.net,Web Config,我的XML看起来像这样,文件名是web.config <?xml version="1.0"?> <configuration> <appSettings> <add key="configFile" value="IIS.config"/> <add key="RialtoDomain" value="ASNC_AUDITORS"/> </appSettings> <syst
web.config
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="configFile" value="IIS.config"/>
<add key="RialtoDomain" value="ASNC_AUDITORS"/>
</appSettings>
<system.serviceModel>
....
</system.serviceModel>
</configuration>
我得到一个空值。没有抛出异常。
这样做对吗
ConfigurationManager.AppSettings["configFile"]
添加名称空间
using System.Configuration;
代替
ConfigurationSettings.AppSettings
你应该使用
ConfigurationManager.AppSettings
String path = ConfigurationManager.AppSettings["configFile"];
由于您正在访问
web.config
,您可能应该使用
using System.Web.Configuration;
WebConfigurationManager.AppSettings["configFile"]
您应该添加System.configuration dll作为参考,并使用
System.configuration.ConfigurationManager.AppSettings[“configFile”]。ToString
不要忘记在开头使用语句添加。希望对您有所帮助。使用System.Configuration;
using System.Configuration;
/// <summary>
/// For read one setting
/// </summary>
/// <param name="key">Key correspondent a your setting</param>
/// <returns>Return the String contains the value to setting</returns>
public string ReadSetting(string key)
{
var appSettings = ConfigurationManager.AppSettings;
return appSettings[key] ?? string.Empty;
}
/// <summary>
/// Read all settings for output Dictionary<string,string>
/// </summary>
/// <returns>Return the Dictionary<string,string> contains all settings</returns>
public Dictionary<string, string> ReadAllSettings()
{
var result = new Dictionary<string, string>();
foreach (var key in ConfigurationManager.AppSettings.AllKeys)
result.Add(key, ConfigurationManager.AppSettings[key]);
return result;
}
///
///用于读取一个设置
///
///关键是你的设置
///返回包含要设置的值的字符串
公共字符串读取设置(字符串键)
{
var-appSettings=ConfigurationManager.appSettings;
返回appSettings[key]??string.Empty;
}
///
///读取输出字典的所有设置
///
///返回包含所有设置的字典
公共字典ReadAllSettings()
{
var result=newdictionary();
foreach(ConfigurationManager.AppSettings.AllKeys中的变量键)
添加(键,ConfigurationManager.AppSettings[key]);
返回结果;
}
以下是访问C#项目中任意位置的web.config设置的简单方法
用例:
litBodyText.Text = Properties.Settings.Default.BodyText;
litFootText.Text = Properties.Settings.Default.FooterText;
litHeadText.Text = Properties.Settings.Default.HeaderText;
Web.config文件:
<applicationSettings>
<myWebSite.Properties.Settings>
<setting name="BodyText" serializeAs="String">
<value>
<h1>Hello World</h1>
<p>
Ipsum Lorem
</p>
</value>
</setting>
<setting name="HeaderText" serializeAs="String">
My header text
<value />
</setting>
<setting name="FooterText" serializeAs="String">
My footer text
<value />
</setting>
</myWebSite.Properties.Settings>
</applicationSettings>
h1你好,世界/h1
P
益智
/p
我的标题文本
我的页脚文本
不需要特殊的程序——一切都已经就绪。我很惊讶,没有人知道从web.config文件读取设置的最佳方法是什么。我检查了一下,仍然得到一个空值。我检查了钥匙和所有东西的拼写。
litBodyText.Text = Properties.Settings.Default.BodyText;
litFootText.Text = Properties.Settings.Default.FooterText;
litHeadText.Text = Properties.Settings.Default.HeaderText;
<applicationSettings>
<myWebSite.Properties.Settings>
<setting name="BodyText" serializeAs="String">
<value>
<h1>Hello World</h1>
<p>
Ipsum Lorem
</p>
</value>
</setting>
<setting name="HeaderText" serializeAs="String">
My header text
<value />
</setting>
<setting name="FooterText" serializeAs="String">
My footer text
<value />
</setting>
</myWebSite.Properties.Settings>
</applicationSettings>