我正在处理旧的ASP代码,对于on error goto 0
和error resume next
这两种语法结构的语义不是很确定。
你能否为我推荐一些有用的资源或直接给我指点迷津?
我正在处理旧的ASP代码,对于on error goto 0
和error resume next
这两种语法结构的语义不是很确定。
你能否为我推荐一些有用的资源或直接给我指点迷津?
在错误恢复下一步:如果程序中出现异常,只需忽略它并继续执行下一条语句。我认为这被认为非常糟糕和丑陋,这也是正确的。这就像有一个大的:
try
{
// your code
}
catch
{
// nothing! muhaha
}
在你的代码中的每个方法(或更糟糕的是,在整个程序周围)。
On error goto 0:禁用当前过程中定义的任何错误处理程序。这就像在你的代码周围有一个大的try-catch一样,一旦它被命中这行就会被禁用。
有关更多信息,请参见MSDN。
on error resume next
的意思是忽略错误并继续执行下一步操作。
on error goto 0
的意思是结束on error resume next
。
您也可以这样做。
<%
on error resume next '<-- This code will resume and continue executing the code if there is an error
'YOUR CODE HERE
if err.number > 0 then '<-- This code will look if there are any errors (even if resumed)
' or use If Err.Number <> 0 Then
'DO SOMETHING IF ERROR
%>
Error Number <%= Err.Number %><BR>
Error Description <%= Err.Description %><BR>
Source <%= Err.Source %><BR>
LineNumber <%= Err.Line %><BR>
<%end if%>
on error go to语句将执行代码转到在页面中定义的特定代码书签。当遇到错误时,这非常有用,可以在出现错误时执行其他操作。
On error resume next语句在错误的代码后继续执行下一条代码。它会忽略错误并继续执行代码。这在处理数百个记录且不希望代码停止执行的情况下特别有用。