我在名为appSettings
的单独配置文件中定义了我的Appsettings.Dev.Config
,并将该文件包含在我的web.config
文件中,如此
<appSettings configSource="ConfigFiles\AppSettings.Dev.config"/>
让我们说文件中的一个设置是
<add key="MailerEmailAccount" value="myemail@myserver.com" />
我可以在web.config中的其他位置访问设置MailerEmailAccount
的值吗?怎么样?
答案 0 :(得分:4)
不,Web配置文件无法从自身中提取“设置”;它根本不是动态的。唯一的动态功能就是能够包含其他.config,但这只是“将所有这些设置视为他们的一部分”。
答案 1 :(得分:4)
如果您创建一个从ConfigurationSection
中提取值的自定义appSettings
,则可能会这样做。
这是一篇解释如何创建自定义配置部分的文章:
http://haacked.com/archive/2007/03/12/custom-configuration-sections-in-3-easy-steps.aspx
我不知道这是否是您正在寻找的,但这是我能够考虑从web.config
内读取web.config
设置的唯一方式。
修改强>
我没有对此进行过测试,但也许这样的事情会起作用?:
[ConfigurationProperty("localName", IsRequired = true, IsKey = true)]
public string LocalName
{
get
{
return this["localName"] as string;
}
set
{
this["localName"] = WebConfigurationManager.AppSettings.Get(value);
}
}