如何在C#中设置项目范围的#define

时间:2010-01-03 18:52:38

标签: c# visual-studio compiler-directives

我在项目中有几个类,它们只需要在应用程序的某些版本中,这些版本当前还没有准备好发布或调试。

为了防止这些类被使用,我想围绕它们:

#if USE_MYCLASS
// Code here...
#endif

不幸的是,我不知道如何设置项目范围#define。

Visual Studio中是否有功能来设置项目范围的定义。

如果有,虽然我现在不需要它,是否有设置解决方案范围定义的功能?

如果没有这样的功能(看作C#没有包含文件,我想这是可能的),是否有任何方法或插件在不使用命令行编译器和/ D的情况下执行此功能?

1 个答案:

答案 0 :(得分:33)

您可以在项目属性中执行此操作,但不能在源代码中执行此操作。

项目属性=> Build =>条件编译符号

您可以指定所需的符号(空格分隔,但IIRC非常宽容)。请注意,DEBUGTRACE也可以使用复选框切换。

我有一些项目有多个“发布”构建配置,每个项目都有不同的符号(对于构建2.0 vs 3.0与3.5版本 - 请参阅<DefineConstants> here