0

起動時に環境変数を読み取る必要があるシナリオがあり、ENV 変数の値に応じて、構成ファイルを App.config ファイルとマージする必要があります。

例えば

MyApp.exe
MyApp.exe.config
Stage\MyApp.exe.config
Live\MyApp.exe.config

開始時 - 環境変数 = Stage の場合、Stage フォルダー内の構成ファイルをマージ - 環境変数 = Live の場合、Live フォルダー内の構成ファイルをマージ

デフォルトの MyApp.exe.config に次のものがあった場合

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

そして、Stage\MyApp.exe.config に次のものがありました

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

アプリケーションが SomeKey の値を「Some NEW Value」として読み取ることを期待しています。

この正確なアプローチを実装するためのクリーンな方法を見つけることができないようです。

ありがとうウォリック

4

1 に答える 1

0

Visual Studio で Build Events を使用することをお勧めします。

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

変数を使用して、ビルド前イベントで app.config を上書きコピーできます。

$(ConfigurationName)

構成名が の場合、DEVapp.config.DEV を app.config にコピーします。

構成名が の場合、PRODapp.config.PROD を app.config にコピーします。

于 2013-10-30T19:12:35.860 に答える