问题
Update: this question, including the title, was rephrased, see history for details
I know that the following App.config includes a external file:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings configSource="appSettings.config"/>
<system.net>
<connectionManagement>
<add address="*" maxconnection="50"/>
</connectionManagement>
</system.net>
</configuration>
But I don't know how to move the system.net to the second file. Actually I haven't tried it, but I am almost certain that it will not work, and I want to know if there is an way for an App.config to include another App.config file by reference.
回答1:
I think you just remove the configSource attributes and then include all the content within the <appSettings>
and <connectionStrings>
elements
回答2:
I was able to get this to work using configSource
<configSections>
<section name="Sites"
type="Wap.Common.Configuration.SiteHandler, Wap.Common" />
</configSections>
<Sites configSource="Sites.Prod.config" />
and then in the external config file it needs to have the ?xml tag
<?xml version="1.0" encoding="utf-8" ?>
<Sites>
...
</Sites>
and then you need to set up the external config file to always copy to the output directory
回答3:
You should not put the system.net section inside the appSettings.config. The standard practice is one config node in a sub config file. I'm not even sure if it's possible to share the same file with different nodes.
You should create another file named perhaps system.net.config and place the entire body in there, the full
<system.net>
<connectionManagement>
<add address="*" maxconnection="50"/>
</connectionManagement>
</system.net>
Then in the App.config you will update the system.net to be
<system.net>
<connectionManagement configSource="system.net.connectionManagement.config"/>
</system.net>
来源:https://stackoverflow.com/questions/487991/is-there-any-way-for-an-app-config-file-to-reference-another-full-config-file