c#调试和发布环境[重复]

Posted

技术标签:

【中文标题】c#调试和发布环境[重复]【英文标题】:c# debugging and release environment [duplicate] 【发布时间】:2014-04-23 12:37:27 【问题描述】:

当我们可以从 Debug 和 Release 更改解决方案配置时,我们是否有可能让某些代码块被编译器忽略, 这也意味着那些代码只能在Debug环境中运行?

【问题讨论】:

【参考方案1】:

您可以使用preprocessor directives 喜欢:

#if DEBUG
    // your code here
#endif

【讨论】:

【参考方案2】:

是的,您可以通过多种方式做到这一点:

在调试版本中,DEBUG 和 TRACE 符号都是默认定义的。在 Release 版本中,只定义了 TRACE。

    您可以使用以下结构:
#if DEBUG
// do something in Debug builds only
#endif

    您可以在方法上应用 Conditional 属性(请参阅http://msdn2.microsoft.com/en-us/library/system.diagnostics.conditionalattribute.aspx)

    您可以使用仅在调试版本中执行的 Debug.xxx 方法

【讨论】:

【参考方案3】:

确实可以。使用#if DEBUG 语句仅在配置处于调试模式时运行。

即:

#if DEBUG
// do some debug specific stuff
#endif

【讨论】:

以上是关于c#调试和发布环境[重复]的主要内容,如果未能解决你的问题,请参考以下文章

C# - 获取;放;保持NULL [重复]

如何仅在调试模式下显示小部件 [重复]

C#:打印对象的所有属性[重复]

c++和c#的Visual Studio键绑定[重复]

C# - 从 Windows 服务启动 Windows 窗体 [重复]

拦截 C# 中的所有异常,即使它们已经被捕获 [重复]