gpt4 book ai didi

c# - 在 Visual Studio 2015 中,DebuggerStepThrough 不再传递异常了吗?

转载 作者:太空狗 更新时间:2023-10-30 01:17:26 25 4
gpt4 key购买 nike

在早期版本的 Visual Studio 中,您可以使用 [DebuggerStepThrough] 属性来忽略特殊方法中的异常,由于某些原因无法避免(网络异常,例如或者解析失败)。 (查看此主题:Don't stop debugger at THAT exception when it's thrown and caught)

现在 Visual Studio 向我显示了没有属性的调用函数的异常,即使它已经被捕获和处理。

例子:

    static void Main(string[] args)
{
ExceptionalMethod();
}
[DebuggerStepThrough]
static void ExceptionalMethod()
{
try
{
throw new Exception("BAM");
}
catch
{ }
}

此代码不应在 VS 2013 或更低版本中停止。与 DebuggerHidden 的行为相同。

是否有一种新技巧可以忽略那个异常?不忽略该类型类(class)的所有异常?

最佳答案

由于“调试 .NET 代码时有益的性能改进”,Microsoft 停用了该功能。

在 Visual Studio 2015 Update 2 中,可以通过更改注册表项来打开该功能/关闭性能改进。

在你的命令行中输入这个来做到这一点:

reg add HKCU\Software\Microsoft\VisualStudio\14.0_Config\Debugger\Engine /v AlwaysEnableExceptionCallbacksOutsideMyCode /t REG_DWORD /d 1

来源: https://blogs.msdn.microsoft.com/visualstudioalm/2016/02/12/using-the-debuggernonusercode-attribute-in-visual-studio-2015/

关于c# - 在 Visual Studio 2015 中,DebuggerStepThrough 不再传递异常了吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31741071/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com