我有两个具有许多常见配置属性的应用程序。当一个配置属性发生变化时,我希望另一个变更。在我开始走错轨道之前,有没有人有明智的方法来实现这个目标?
编辑:我正在使用.NET 2.0
您可以为所涉及的配置部分创建和引用公共configSource。例如,如果您想要一组通用的AppSettings,请将当前的appSettings复制到一个新文件(比如appSettings.shared.config)并在两个应用程序配置中将它们替换为:
<appSettings configSource="appSettings.shared.config"/>
这里有更多文档:http://sunali.com/2008/01/23/configsource-property-dividing-configuration-files-into-pieces/
据我所知,这不能用于整个文件,只有部分,并且每个部分都需要自己的文件(并且该部分仍然必须在app.config的configurationsections元素中声明)。但是,这有很多很酷的用途;例如,您可以将连接字符串分成适合不同环境(本地,开发,测试,登台,制作)的文件,并在一个地方更改一个文件名,现在您将应用程序指向不同的环境。
一种简单的方法是在两个应用程序中使用app.config中的configSource属性,并将其指向一个公共文件。宾果,更改一个文件,所有应用程序都更新。
查看有关它的MSDN文档here。
有几种不同的方法可以做到这一点: