如何将异常传递给调用者

时间:2018-02-14 04:11:07

标签: vb.net try-catch

这似乎必须简单,但我找不到简单的直接答案。

请考虑以下事项:

Sub Caller()
  Try
    Callee()
  Catch ex As Exception
    MsgBox(Ex.Message)
  End Try
End Sub

Sub Callee()
  Try
    'Generate an error
  Catch ex As Exception
    'Pass the exception back to Caller.
    'I tried using 'throw' but it errored out inside this function
  End Try
End Sub

如何处理Callee内的异常,而是将异常传回Caller

这是一些实际上使用已经返回数据的函数的代码的高度简化视图。所以,我不能使用带返回值的函数来传回异常。

谢谢!

1 个答案:

答案 0 :(得分:1)

如果您只希望Caller处理异常,请从Callee方法中删除Try-Catch块。 Callee方法抛出的任何异常都将自动捕获到Caller方法内的Try-Catch块中。