从自定义位置合并应用程序.config



我有一个场景,我需要在启动时读取一个环境变量,然后根据 ENV 变量的值,我需要将配置文件与 App.config 文件合并。

例如

MyApp.exe
MyApp.exe.config
StageMyApp.exe.config
LiveMyApp.exe.config

启动时-如果环境变量 = 阶段,则合并阶段文件夹中的配置文件-如果环境变量 = Live,则合并 Live 文件夹中的配置文件

如果我在默认的 MyApp.exe.config 中有以下内容

<appSettings>
 <add key="SomeKey" value="SomeValue">
</appSettings>

然后在阶段\MyApp.exe.config中有以下内容

<appSettings>
  <add key="SomeKey" value="Some NEW Value">
</appSettings>

我希望我的应用程序将 SomeKey 的值读取为"一些新值"。

我似乎找不到一种干净的方法来实施这种确切的方法。

谢谢沃里克

你可能

希望在Visual Studio中使用生成事件。

http://msdn.microsoft.com/en-us/library/42x5kfw4(v=vs.90).aspx

可以使用该变量在预生成事件中复制覆盖 app.config:

$(ConfigurationName)

如果配置名称为 DEV ,则通过 app.config 复制 app.config.DEV

如果配置名称为 PROD ,则在 app.config 上复制 app.config.PROD

最新更新