为什么在调试模式下运行时,此示例中引发的异常报告为 Visual Studio 未处理?
public bool bar(string pVal)
{
throw new Exception("hello there");
}
public void foo(Func<string,bool> pFunc)
{
try {
pFunc("test");
} catch(Exception) {
// should be caught
}
}
// passing bar to foo as a callable causes unhandled exception
foo(bar);
如果我在调试器中运行它,那么抛出的异常bar()
是未处理的。调试器将在异常停止后继续捕获。
我foo()
在单元测试中编写了一个函数来帮助自动化异常测试,但它不起作用。有人可以解释为什么这不起作用,以及是否可以修复它。