[英]Err.Number vs try-catch in VB.net
我继承了一个旧的VB.net项目。 代码主要使用try-catch进行错误处理。 但是在某些地方我发现If Err.Number <> 0 Then
。
如果出现错误,是什么决定如果一个Exception
应该被抛出,或只设置Err
?
我不想两种方式处理错误......
Err
对象与旧式On Error
错误处理构造一起使用,这是经典VB的余数。 Try-Catch
是更新的.NET风格的错误处理方式。
您可以了解有关此内容的更多信息,以及Visual Basic.NET中错误处理的不同之处。
听起来像旧代码使用On Error Resume Next。 确保你明白它做了什么,它有点奇怪!
文档解释了它
On Error Resume Next导致执行继续执行导致运行时错误的语句之后的语句,或者紧跟在包含On Error Resume Next语句的过程的最近调用之后的语句。 尽管存在运行时错误,但此语句允许继续执行。 您可以将错误处理例程放在发生错误的位置,而不是将控制转移到过程中的其他位置。
然后,您将使用If Err.Number <> 0来检查是否发生了错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.