仅在使用Visual Studio进行调试时执行代码

时间:2016-09-30 12:48:03

标签: c# visual-studio debugging

只有在我通过Visual Studio的调试工具调试程序时才能运行特定的代码吗?

如果我使用#if DEBUGConditional(“DEBUG”),则在/ Debug目录中运行.exe时仍会触发代码。

3 个答案:

答案 0 :(得分:8)

#if DEBUG用于条件编译,它不会影响运行时的执行。

而是使用Debugger.IsAttached在运行时分支。

答案 1 :(得分:0)

好的,我终于找到了答案:

if(Debugger.IsAttached)正是我所需要的。

答案 2 :(得分:0)

为了说清楚,以hashtag开头的语句是预处理器指令。翻译单元中没有这些指令;因此编译文件中不存在这些条件语句。

编辑似乎整个翻译单元的内容不适用于C#