【问题标题】:VS2013: How to make #if DEBUG code run?VS2013:如何让#if DEBUG 代码运行?
【发布时间】:2013-12-17 14:41:04
【问题描述】:

我正在尝试调试 C# 应用程序,并且我在 #if DEBUG/#endif 块中定义了一些仅调试代码,尽管将构建设置为调试并仔细检查项目属性并确保它已设置输出到调试并选中“定义调试常量”复选框,我的代码没有运行。这就是我想要做的:

#if DEBUG
    log.Add("Executing this section of code.");
#endif

还有

#if DEBUG
    SkipToThisOtherMethod();
    return;
#endif

不运行该代码就直接过去了。我做错了什么??

【问题讨论】:

  • 设置“定义调试常量”后确定编译了吗?因为那应该是你唯一需要的。另外:你有#undef DEBUG吗?
  • 我没有其他类似的代码。我想我假设单击“开始”按钮会编译代码;显然不是,因为我刚刚使用了“重建解决方案”命令,现在它可以工作了。请作为答案回复,以便我指出这一点。
  • @Ant,如果您想在单击“运行/开始”按钮时执行构建操作,请进入 VS 的选项对话框并导航到“Projections and Solutions”->“Build and Run ”。在那里,您应该找到几个关于按下“运行”按钮时会发生什么的选项。 (我不详细了解 VS2013 选项对话框,但我希望与旧 VS 版本相比,它们没有完全重组它。)
  • 我有同样的问题,并且“定义调试常量”框选中(它位于 CSPROJ 属性页的构建部分)。该代码在 VS2010 下工作,但在 VS2013 下不工作。

标签: c# debugging visual-studio-2013 visual-studio-debugging


【解决方案1】:

我遇到了这个问题,似乎通过取消勾选定义调试常量、保存项目、重新勾选并再次保存项目来解决它。然后构建并运行,#if DEBUG 和 #if !DEBUG 部分恢复正常工作。

【讨论】:

    猜你喜欢
    • 2018-12-23
    • 2021-10-23
    • 2013-12-02
    • 1970-01-01
    • 1970-01-01
    • 2012-02-22
    • 1970-01-01
    • 2020-03-06
    相关资源
    最近更新 更多