c# - 抛出异常时如何防止调试器进入我的方法?

标签 c# visual-studio visual-studio-2015 visual-studio-debugging

如何在抛出异常时阻止调试器进入我的方法,而是在方法的调用位置显示异常?

例如,如果某人的代码导致从 mscorlib 抛出异常,调试器(显然)不会将它们带入非用户代码以显示异常的来源,仅在调用位置显示异常。

换句话说,这是默认行为:

default behavior

这是我想要的行为:

desired behavior

我尝试将 [DebuggerNonUserCode][DebuggerStepThrough] 属性添加到我的 Fail() 方法,但没有成功。

最佳答案

您需要用 DebuggerHiddenAttribute 修饰您的方法:

[DebuggerHidden]
public static void Fail() {
    throw new Exception("Fail");
}

关于c# - 抛出异常时如何防止调试器进入我的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47346195/

相关文章:

c++ - std::move 和 RVO 优化

c# - VS 2015 中的 RazorEngine 模板 - 功能 'implicitly typed local variable' 在 c# 2 中不可用

c# - 如何在 wpf 的数据网格中获取以编程方式编写的组合框的值?

c# - MVC 从 Web 服务解析 XML

c# - 使用泛型作为函数的返回值是不好的做法吗?

c# - 使用smtp端口发送邮件时的异常处理

c# - 如何在 Visual Studio 中生成项目的设置设计器文件

visual-studio - 在 VS 测试框架和 TestInitialize() 属性中使用构造函数有什么区别?

c# - 颜色.FromArgb(...);安全信息

asp.net-mvc - 根据验证程序,远程证书无效。使用推特进行外部登录