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

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

【问题讨论】:

    标签: c#


    【解决方案1】:

    您可以使用preprocessor directives 喜欢:

    #if DEBUG
        // your code here
    #endif
    

    【讨论】:

      【解决方案2】:

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

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

      1. 您可以使用以下结构:
      #if DEBUG
      // do something in Debug builds only
      #endif
      
      1. 您可以在方法上应用 Conditional 属性(请参阅http://msdn2.microsoft.com/en-us/library/system.diagnostics.conditionalattribute.aspx

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

      【讨论】:

        【解决方案3】:

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

        即:

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

        【讨论】:

          猜你喜欢
          • 2013-11-15
          • 1970-01-01
          • 2014-06-11
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-03-26
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多