一个快速的C#问题,我想知道在我的项目中>属性> Build,有一个检查“定义DEBUG常量”,所以如果我检查然后执行此操作,
[Conditional(DEBUG)]
public static void Foo() {
Console.WriteLine("Executed Foo");
}
看到它不是“DEBUG”它的 DEBUG 常量。这样可以吗?或者我是否必须在项目设置中的条件编译符号中添加“DEBUG”?还是 #define 呢?
答案 0 :(得分:5)
我很确定你需要这样做:
[Conditional("Debug")] or [Conditional("DEBUG")]
或者您可以定义自己的常量,例如:
const string DEBUG = "DEBUG";
然后使用
[Conditional(DEBUG)]
这必须伴随#define DEBUG
声明。请参阅MSDN上的Conditional C#。
答案 1 :(得分:3)
您需要添加双引号才能正常工作:
[Conditional("DEBUG")] // <- Works the DEBUG define
public static void Foo() {
Console.WriteLine("Executed Foo");
}