1

我正在尝试将断言语句添加到项目中,但它们一直被跳过。我需要在某处启用一个选项吗?

断言语句是:

Debug.Assert(false, "Deserialization failed", "Deserialization failed");

我正在调试模式下运行。我可能正在做一些愚蠢的事情;我不确定。

4

1 回答 1

2

确保已定义 DEBUG 条件编译符号。在 VS2008 中,在 Build 选项卡上项目的属性页面上:“Define DEBUG constant”。默认情况下,调试版本应该是这种情况,但它有可能被关闭。

它可以在其他 IDE 中以类似但不同的方式设置/取消设置(可能使用编辑控件而不是复选框)。

它也有可能(但不太可能)被配置文件设置禁用,无论是使用<assert assertuienabled="false" />设置还是因为 DefaultTraceListener 已从 Listeners 集合中删除。如果您认为这可能是正在发生的事情,请参阅 Debug.Assert() 方法的文档以获取更多详细信息。

于 2008-10-16T23:57:44.617 回答