语言:C#
我使用背景工作来完成我的长期工作。我碰巧看到一个例外,我应该忽略它。当我在代码块中处理异常时,它不会被块本身捕获。相反它被抓住了,我调用了backgroundworker的dowork。
问题情况
Backgroundworker1_dowork()
{
try
{
fun1();
}
catch(Exception e)
{
console.writeline("bg block");
}
}
void fun1()
{
try
{
throw new exception("ex1");
}
catch(Exception ex)
{
Console.writeline("code block");
}
}
output: bg block Expected: code block
任何人都可以帮助我......
答案 0 :(得分:0)
您提供的代码无法编译,因此很难确定问题。然而,对fun1的调用失败或者fun1中的catch块失败。
我会在尝试fun1之前加上Debug.WriteLine("In fun1");
。如果你在输出中没有看到这个,那么你就知道对fun1的调用失败了。如果看到此输出,则表示catch块失败。