c#运行调试版本的生产代码

c#运行调试版本的生产代码,c#,C#,我有以下代码: #if (DEBUG) imgPath = GetDirectoryName(Application.ExecutablePath); #else imgPath = GetDirectoryName(Application.ExecutablePath) + "\\images\\"; #endif 当代码投入生产(实时站点)时,它看起来仍然是调试版本。这怎么可能?在升级过程中,是否有什么东西可以指示do RELEAS

我有以下代码:

     #if (DEBUG)

      imgPath = GetDirectoryName(Application.ExecutablePath);

    #else

      imgPath = GetDirectoryName(Application.ExecutablePath) + "\\images\\";

    #endif

当代码投入生产(实时站点)时,它看起来仍然是调试版本。这怎么可能?在升级过程中,是否有什么东西可以指示do RELEASE vs DEBUG

您可能部署了一个版本,其中二进制文件取自调试生成配置,或者在任何情况下,DEBUG变量设置为True

您需要在RELEASE中构建并使用该输出作为候选版本。

当使用#if语句时,它正在检查以确定是否定义了常量。在项目的properties->Build部分下,调试常量(默认情况下)设置为在调试模式下定义。没有释放常数,除非您自己定义它。您可能在调试模式下使用了构建,或者为发布构建检查了“定义调试常量”。仔细检查您使用的版本和构建设置


此外,您的代码应该灰显,以表明VS不会编译该代码。因此,如果您希望使用的代码是灰色的,则表示您已在某处定义了调试。

是否将生成目标从调试更改为发布?您指的是什么升级过程?这是在转到生成-->发布时