C# #if#else#endif指令

C# #if#else#endif指令,c#,wpf,C#,Wpf,当尝试使用上述指令时,“if”后面的行显示为代码并执行,但else后面的行保持灰色且不执行。endif语句有效。如何使else指令作为一行代码工作 调试定义常量在安装程序中勾选 如果您的意思是如何让else下的代码而不是If下的代码执行,那么只需在您的设置中取消选中DEBUG即可。我可以建议如下: #if DEBUG e.Handled = false; #else ShowUnhandledException(e); #endi

当尝试使用上述指令时,“if”后面的行显示为代码并执行,但else后面的行保持灰色且不执行。endif语句有效。如何使else指令作为一行代码工作


调试定义常量在安装程序中勾选

如果您的意思是如何让
else
下的代码而不是
If
下的代码执行,那么只需在您的设置中取消选中DEBUG即可。

我可以建议如下:

#if DEBUG               
         e.Handled = false; 
#else
        ShowUnhandledException(e);
#endif
我经常有一些静态变量,带有buildmode的enum表示形式,用于修改调试时的特定行为(例如不发送邮件等)

\if
指令确定代码是否已编译。当您处于调试模式时,
#else
块中的代码将被完全忽略。真的不清楚你在问什么。
bool isDebugging;
#if DEBUG
    isDebugging = true;
#else
    isDebugging = false;
#endif

if(isDebugging)
{
    e.Handled = false;
}
else
{
    ShowUnhandledException(e);
}