我有以下代码:
#if (DEBUG)
imgPath = GetDirectoryName(Application.ExecutablePath);
#else
imgPath = GetDirectoryName(Application.ExecutablePath) + "\\images\\";
#endif
当代码进入生产(实时站点)时,它仍然看起来是DEBUG版本。这怎么可能?促销过程中是否有某些内容可以指示RELEASE vs DEBUG
答案 0 :(得分:1)
您可能已经部署了一个版本,其中包含从Debug构建配置中获取的二进制文件,或者在任何情况下,DEBUG变量都设置为True。
您需要构建RELEASE并将该输出用作候选版本。
答案 1 :(得分:1)
使用#if语句时,它正在检查以确定是否定义了常量。在项目的properties-> Build部分下,DEBUG常量(默认情况下)设置为在调试模式下定义。除非您自己定义,否则没有RELEASE常量。您可能已经从调试模式使用了构建,或者为发布版本检查了“定义DEBUG常量”。仔细检查您使用的内容和构建设置。
此外,您的代码应该显示为灰色,表示VS不会编译该代码。因此,如果您希望使用的代码是灰色的,那么您可以在某处定义DEBUG。