Debug.Assert() 没有被抛出

Debug.Assert() isn't thrown

我有以下代码:

正如您在快速查看工具提示中看到的那样,nNewCell.Style 是空的。 尽管如此,行

Debug.Assert(nNewCell.Style IsNot Nothing)
Debug.Assert(nNewCell.Style.GUID <> "")

没有被抛出。

IDE 不会引发异常或停在那里,IDE 只是忽略这些行。

我的项目设置是Debug x86。

可能是什么导致了这个问题?

项目属性 ➤ 编译 ➤ 高级编译选项

您将看到 Define DEBUG constant 的复选框。必须检查 Debug 功能才能正常工作。如果不是,它们将被忽略并且不会编译到您的程序集中。

这看起来确实像您缺少 DEBUG 常量,因为您的代码应该由于行 Debug.Assert(nNewCell.Style.GUID <> "") 而抛出 NullReferenceException 而您的屏幕截图显示它是 Nothing


一个简短的笔记。这个问题很容易引起,在追踪与此相关的问题之前我已经浪费了相当多的时间。创建新配置时,请始终复制适当的类型(调试或发布)。像这样的问题通常是由于复制了 Release 或非调试配置,然后试图将它们视为调试引起的。