有没有比使用更好更安全的方式:#define DEBUG?

时间:2011-02-11 14:01:58

标签: c# .net asp.net

在我的一个asp.Net页面中,我想设置一些用户控件的属性,以便在我调试和测试页面时,它的行为更加简单和快捷。

我想编译代码块,只有在DEBUG中运行VS时才设置我的属性。我知道我可以使用条件编译指令,如:

#define DEBUG

#if DEBUG
        // some settings here
#else
              // some settings to be used in Released code
#endif

但问题是我想避免发表评论声明的风险。

有比这更安全的方式吗? 谢谢!

2 个答案:

答案 0 :(得分:7)

您通常不应在代码中包含#define - 具有不同Visual Studio项目配置的重点是他们控制定义的预处理器符号。

只需构建Release或Debug配置即可控制使用的代码位。

答案 1 :(得分:-2)

你的代码错了。您永远不会在#else部分中运行,因为您始终定义DEBUG符号,因此无法定义if何时始终为真。

关于安全性,我发现使用#define DEBUG时没有任何威胁。只需删除它并使用项目配置!