【问题标题】:How to set project wide #define in C#如何在 C# 中设置项目范围的#define
【发布时间】:2011-01-01 00:55:40
【问题描述】:

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

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

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

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

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

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

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

【问题讨论】:

    标签: c# visual-studio compiler-directives


    【解决方案1】:

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

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

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

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

    【讨论】:

    • 就在我面前!我从来不知道那是什么,或者如何使用它,谢谢!
    • "您可以在项目属性中执行此操作,但不能在源代码中执行此操作。"这实际上是非常令人不快的限制。为了方便和可见性,能够在代码中执行此操作很重要。
    猜你喜欢
    • 2012-08-25
    • 1970-01-01
    • 2018-08-04
    • 2011-01-12
    • 2020-02-23
    • 1970-01-01
    • 1970-01-01
    • 2016-01-29
    • 1970-01-01
    相关资源
    最近更新 更多