更新:此问题(包括标题)已重新定义,详见历史记录
我知道以下App.config包含一个外部文件:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings configSource="appSettings.config"/>
<system.net>
<connectionManagement>
<add address="*" maxconnection="50"/>
</connectionManagement>
</system.net>
</configuration>
但我不知道如何将system.net移动到第二个文件。实际上我没有尝试过,但我几乎肯定它不会工作,我想知道App.config是否有办法通过引用包含另一个App.config文件。
答案 0 :(得分:10)
我能够使用configSource
来解决这个问题<configSections>
<section name="Sites"
type="Wap.Common.Configuration.SiteHandler, Wap.Common" />
</configSections>
<Sites configSource="Sites.Prod.config" />
然后在外部配置文件中需要有?xml标记
<?xml version="1.0" encoding="utf-8" ?>
<Sites>
...
</Sites>
然后您需要设置外部配置文件以始终复制到输出目录
答案 1 :(得分:6)
您不应将system.net部分放在appSettings.config中。标准做法是子配置文件中的一个配置节点。我甚至不确定是否可以与不同的节点共享同一个文件。
您应该创建另一个名为system.net.config的文件,并将整个主体放在那里,完整的
<system.net>
<connectionManagement>
<add address="*" maxconnection="50"/>
</connectionManagement>
</system.net>
然后在App.config中,您将更新system.net为
<system.net>
<connectionManagement configSource="system.net.connectionManagement.config"/>
</system.net>
答案 2 :(得分:0)
我认为您只需删除configSource属性,然后在<appSettings>
和<connectionStrings>
元素中包含所有内容