app.config 配置部分很好,但我经常需要多个配置集,但差异很小。我想要的是:
- 有一个部分具有默认配置(这个部分是由设计器创建的,因此在 Settings 类中具有自动生成的强类型访问器
- 另一个只有“新”项目的部分,所有其他项目都从原始部分获取它们的值。
(注意 - 将“其他部分”放在单独的文件中也很好,但这是一个不同的问题。)
编辑:应用程序是普通的可执行文件(或服务)——它不是网络服务。另外,我知道有一个“machine.config”可以继承,但它太全球化了:它适用于所有应用程序
app.config 配置部分很好,但我经常需要多个配置集,但差异很小。我想要的是:
(注意 - 将“其他部分”放在单独的文件中也很好,但这是一个不同的问题。)
编辑:应用程序是普通的可执行文件(或服务)——它不是网络服务。另外,我知道有一个“machine.config”可以继承,但它太全球化了:它适用于所有应用程序
我认为您必须使用自定义处理程序来管理它。
第二部分很简单,因为您可以在原始配置文件中使用 configSource 属性来指向包含 xml 源的文件。
<system.serviceModel>
<diagnostics>
<messageLogging logMalformedMessages="true" logMessagesAtServiceLevel="true"
logMessagesAtTransportLevel="true" />
</diagnostics>
<bindings configSource="web.shared.bindings.config" ></bindings>
<client configSource="web.shared.client.config" ></client>
</system.serviceModel>
下面是我们如何将部分 Service.ServiceModel XML 链接到我们的 Web Config 中,这样我们就可以将它们分开并轻松编辑。