/ /コンパイラ定数に基づいた設定の変更 - c#、debugging、web-config、app-config

コンパイラ定数に基づいて設定を変更する - c#、debugging、web-config、app-config

コードでは、現在有効なビルド構成に基づいてコードの特定のセクションを含むか除外することを知っています。 DEBUG

static void Main()
{
#if DEBUG

//While debugging this section is used.

#else

//In Release this section is used. This is the "normal" way.

#endif
}

今、web.configやapp.configなどの設定ファイルで、同じようにしたいと考えています。

<appSettings>
<!-- IF DEBUG -->
<add key="foo" value="debug-setting" />
<!-- ELSE -->
<add key="foo" value="release-setting" />
<!-- ENDIF -->
</appSettings>

どうやってやるの?

回答:

回答№1は0

あなたはそれを行うことはできません。構成はその正確な機能を提供しません。

しかし、あなたが使用できるものは、構成変換です。これを使用して、ビルド構成ごとにオプションのトランスフォームを定義します。ここでは、次のようなことができます。

App.config

<appSettings>
<add key="foo" value="debug-setting" />
</appSettings>

App.Release.config

<appSettings>
<add key="foo" value="release-setting" xdt:Transform="Replace" xdt:Locator="Match(key)" />
</appSettings>

も参照してください Visual Studio 2010のWebプロジェクトではないプロジェクトのApp.Config変換?.