c# - 停止调试断言?

标签 c# debugging

我正在使用一个库,当我做某事时,它会尝试执行 Debug.Assert,是否有办法阻止它使用 Debug.Assert?

最佳答案

如果你能重新编译库,那么Marc是正确的;只需在没有定义 DEBUG 的情况下重新编译它,所有断言都会消失。

如果你不能那样做,因为你没有库的源代码,那么你可以让你的程序清除Trace Listeners .这样当断言触发时,它仍然会触发但什么都不做。 (当断言触发时,它只是检查注册了哪些跟踪监听器,并通知他们有关断言的信息。没有监听器意味着什么都没有发生。)

在那种情况下,您可能会考虑将默认跟踪监听器替换为您自己的客户跟踪监听器,该监听器执行诸如将断言记录到文件中之类的操作。这样您就可以查看日志并查看在库的调试版本的“正常”执行中会弹出哪些断言。

关于c# - 停止调试断言?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6102159/

相关文章:

c# - 输出未正确写入 CSV

python - 如何检查当前代码是否是 try-except-block 的一部分?

c# - 无法将带 [] 的索引应用于 'Array' 类型的表达式 '

任何地方的 C# Winforms ListView DoubleClick 事件

c - 不兼容的返回类型

c++ - 在 QtCreator 中调试使用 Boost.Python 构建的模块

debugging - boost 测试 : how to debug tested code?

android - 我的生日快乐应用程序在我的手机上强制关闭

c# - Rhino Mocks——断言不与模拟/ stub 交互

c# - 是否保证 Dictionary.Values 按添加顺序返回元素?