デバッグ担当者が要求した場合にのみ実行されるC#の「デバッグ専用」コードを追加したいと思います。C ++では、以前は次のようなことをしていました。
void foo()
{
// ...
#ifdef DEBUG
static bool s_bDoDebugOnlyCode = false;
if (s_bDoDebugOnlyCode)
{
// Debug only code here gets executed when the person debugging
// manually sets the bool above to true. It then stays for the rest
// of the session until they set it to false.
}
#endif
// ...
}
ローカルの統計がないため、C#ではまったく同じことはできません。
質問:C#でこれを達成するための最良の方法は何ですか?
- C#プリプロセッサディレクティブ(
#if/#endif DEBUG
)でプライベートクラスの静的フィールドを使用する必要がありますか? - (コードを保持するために)Conditional属性を使用し、次に(C#プリプロセッサディレクティブで囲まれていない)プライベートクラスの静的フィールドを使用する必要があります
#if/#endif DEBUG
か? - 他に何か?