gpt4 book ai didi

c# - 当 Debug.Assert 失败时导致 VS2010 调试器中断

转载 作者:可可西里 更新时间:2023-11-01 08:26:05 26 4
gpt4 key购买 nike

Debug.Assert 的参数计算为 false 时,是否有任何方法可以导致 Visual Studio 2010 在调试时中断?

示例:在我的代码中有这样的行:

Debug.Assert(!double.IsInfinity(x));

如果我没有调试,断言失败时会弹出一个窗口。

但是当我调试时,断言被记录到“输出” Pane 中,这很容易被遗漏;没有弹出窗口,调试器不会停止。因此:当 Debug.Assert 失败时,是否有任何方法可以强制 Visual Studio 调试器中断?

(顺便说一句:我正在开发基于 WPF 的桌面应用程序。在 Windows 窗体应用程序中,行为似乎有所不同:此处,调试器在 Debug.Assert 处停止。)

编辑:请让我澄清一下:我不是在寻找 Debug.Assert() 的替代方法,因为我的代码和我使用的外部代码充满了 Debug .Assert() 语句。我正在寻找一种在 Debugg.Assert 失败时导致 Visual Studio 调试器中断的方法。 (我认为早期的 VS 版本就是这样做的,并且行为在 VS2010 中发生了变化)。

最佳答案

如果调试是指使用“Step Into”功能,请参阅此 MS 对问题的回答。

http://connect.microsoft.com/VisualStudio/feedback/details/522995/system-diagnostics-debug-assert-doesnt-pop-up-messagebox-correctly-when-step-into-it-in-vs-2010-and-2008

在 Assert 语句中使用“Step Over”也确实解决了这个问题(对我而言)。

关于c# - 当 Debug.Assert 失败时导致 VS2010 调试器中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7633265/

26 4 0
文章推荐: c# - 在 Protobuf.NET 中序列化 List (其中对象支持原语)?