回答:
いいえ、あなたはいくつかの仕事をしない限り、それはしません。
ここでの重要な部分はデバッグが実際に何であるかであり、それはコンパイラがチェックすることができる定義された定数の一種です。
プロジェクトのプロパティを確認すると、[ビルド]タブで3つのことがわかります。
そのようなチェックボックスや、RELEASEという名前の定義済みの定数/シンボルはありません。
ただし、条件付きコンパイルシンボルというラベルの付いたテキストボックスにその名前を簡単に追加できますが、これらの設定は構成ごとに行われるため、変更する前にプロジェクト構成を必ずリリースモードに設定してください。
したがって、基本的には、それをテキストボックスに追加しない限り、#if RELEASE
どのような構成でもコードは生成されません。
RELEASE
定義されていませんが、使用できます
#if (!DEBUG)
...
#endif
RELEASE
は定義されているのか疑問に思いました。
いいえ。
デバッグ構成では、DEBUG
(Visual Studioによって自動的に定義された)定義された定数がありますが、リリースモード用に定義された定数はありません。ビルド中のプロジェクト設定を確認してください。
プロジェクト->ビルドの [Define DEBUG constant]を選択することは、すべてのファイルの先頭に#define DEBUGを含めることに似ています。
リリース構成のRELEASE定数を定義する場合は、次の場所に移動します。
#if (RELEASE) [RequireHttps] #endif
私はこれまでに見たことがありません...
#if (DEBUG == FALSE)
そして
#if (!DEBUG)
ええ、そうですか?
!
、2番目の例のように、オペレーターのみが機能します。
「Pop Catalin」は正解です。ビルドのタイプに基づいて定義を制御することで、柔軟性が大幅に向上します。たとえば、 "DEBUG"、 "DEMO"、および "RELEASE"構成をすべて同じソリューションに含めることができます。これにより、2つの異なるソリューションを使用してプログラミングを重複して行う必要がなくなります。
したがって、はい、#if RELEASE
またはRELEASE条件付きコンパイルシンボルが定義さ#if (RELEASE)
れている#if DEBUG
場合と同じように機能します。
以下は、「ポップカタリン」ポストから取られている:あなたはにリリース構成を行くためのRELEASE定数定義する場合:*プロジェクトのプロパティを- >ビルド *選択してリリースモード*で条件付きコンパイルシンボルを入力してくださいテキストボックス:RELEASEを
私はこれが古い質問であることを知っていますが、TESTやUATなど、DEBUGおよびRELEASEの外で独自の構成を作成できることは言及に値するかもしれません。
次に、プロジェクトプロパティページの[ビルド]タブで、[条件付きコンパイルシンボル]をTESTに設定すると(たとえば)、次のような構成を使用できます。
#if (DEBUG || TEST )
//Code that will not be executed in RELEASE or UAT
#endif
このコンストラクトは、必要に応じてさまざまなクライアントや、たとえばWebメソッド全体などの特定の理由で使用できます。一部のコマンドが特定のハードウェアで問題を引き起こした過去にもこれを使用したため、ハードウェアXにデプロイしたときにアプリの構成があります。
独自の条件付きコンパイル時シンボル(任意の名前)を作成できます。プロジェクトプロパティボックスのメニューオプションにある[プロジェクトのビルド]ダイアログに移動します。プロジェクト-> [プロジェクト名]プロパティ...
「C#コードファイルの先頭」で定義することもできます。お気に入り:
#define RELEASE
// or
#undef RELEASE
このシンボルは#ifステートメントで使用できます。
#if RELEASE
// code ...
#elif …
// code ...
#endif
// or
#if !RELEASE
// code ...
#endif
なぜか
#if RELEASE
#undef DEBUG
#endif
/d:RELEASE
も動作します。これをリリース構成(プロジェクトプロパティのビルドタブ)の条件付きコンパイルシンボルに追加することもできます。
#if !DEBUG
と同じ機能を果たします#if RELEASE
。また、#if DEBUG
その後、#else
その後#endif
のモードで実行するために別のコードがあるかどう。