我有一个Windows应用程序,它通过点击一次部署。我在app.config中的appsettings有几个设置。某些设置是特定于部署的,例如文件下载等的Web服务器源。它将随部署区域而变化。某些设置项是特定于应用程序的,在部署期间不会更改。
<appSettings >
<add key="key1" value="Value111 changable with region" />
<add key="Key2" value="Value222 changable with region" />
<add key="key3" value="Value333 NOT changable with region" />
<add key="Key4" value="Value444 NOT changable with region" />
</appSettings >
现在我需要在两个app.config文件中拆分我的appsettings。 我想将key1和key2放在单独的配置文件中。我该怎么做。
答案 0 :(得分:11)
使用appSettings file attribute并为每个部署区域指定其文件版本。
<强>的app.config 强>:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings file="regionsettings.config">
<add key="key1" value="default value" />
<add key="commonKey" value="common value" />
</appSettings>
</configuration>
regionsettings.config ( region 1 ):
<?xml version="1.0" encoding="utf-8" ?>
<appSettings>
<add key="key1" value="region 1" />
</appSettings>
regionsettings.config ( region 2 ):
<?xml version="1.0" encoding="utf-8" ?>
<appSettings>
<add key="key1" value="region 2" />
</appSettings>
或者像Henk建议的那样:
<add key="region1.key1" value="region1key1 value" />
<add key="region2.key1" value="region2key1 value" />