在Release编译上启用代码

时间:2011-08-03 13:33:14

标签: c# visual-studio-2010

我有代码,当我使用Release配置构建项目并在调试时禁用时,我想启用编译。怎么做?

2 个答案:

答案 0 :(得分:8)

使用preprocessor directive

#IF ! DEBUG
//Your code here
#ENDIF

但是,如果您的代码已满,请考虑其他选项,例如

另一种方法是在方法上使用ConditionalAttribute,这样只有在定义了特定符号时才会使用它:

[Conditional("RELEASE")]
public void MyReleaseMethod()
{
}

答案 1 :(得分:3)

使用预处理程序指令。用以下代码包围代码:

#if !DEBUG

// Release-only code goes here...

#endif

在Visual Studio中的标准调试和发布配置中,DEBUG符号是在调试时编译而非发布时定义的,因此上述两个指令之间的代码只能在发布模式下编译。

如果你需要在调试中做一件事,在发布中做另一件事,你可以这样做:

#if DEBUG

// Debug-only code goes here...

#else

// Release-only code goes here...

#endif

有关详细信息,请参阅C# preprocessor documentation