加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 发布时定义的DEBUG

发布时间:2020-12-15 05:38:19 所属栏目:百科 来源:网络整理
导读:我有一个奇怪的问题 #if (!DEBUG) checkLicense();#endif 这在Release和Debug配置中都能正常工作.但是当我尝试使用发布配置发布时,这个条件不会执行.看起来发布正在使用debug dll. 我错过了什么? 解决方法 有一个设置可以控制是否根据不同的部署模式为每个
我有一个奇怪的问题
#if (!DEBUG)
    checkLicense();
#endif

这在Release和Debug配置中都能正常工作.但是当我尝试使用发布配置发布时,这个条件不会执行.看起来发布正在使用debug dll.

我错过了什么?

解决方法

有一个设置可以控制是否根据不同的部署模式为每个项目定义DEBUG常量. See this answer通过确保选中Define DEBUG constant复选框来验证是否为’release mode’定义了常量.

如果未选中此框,则在编译站点之前,预处理器将删除您的调试代码,并且不会执行任何代码,即使您将ELSE包含在建议的其他答案中也是如此.

如果这不起作用,那么另一种可能性是你运行发行代码的机器可以使用deployment element的machine.config:

<deployment retail="true" />

此元素将覆盖应用程序的web.config设置,并将计算机上所有.NET应用程序的调试标志设置为false.

如果可能的话,检查一下.虽然我认为我给你的第一个选择更有可能.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读