我有一个带有很多Debug.Assert()调用的DLL。 我已将此DLL构建为Release,因此Assert未处于活动状态(我使用小型测试程序进行了检查)。 现在我在一个软件项目中使用这个DLL,这是一个Debug-Build,由于某些原因,DLL中的Asserts再次处于活动状态。 项目的DEBUG定义是否重新激活DLL中的断言? (VisualStudio 2013)
答案 0 :(得分:0)
当C#编译器遇到#if指令,最后是#endif指令时,只有在定义了指定的符号时,它才会在指令之间编译代码。
考虑到这一点,我会说你不应该看到这些断言,因为在Release模式下进行编译时,代码应该被忽略了。
您可以尝试反编译发布程序集,看看代码是否已生成。