ASP ASPError 对象


ASPError对象是用来处理ASP页面在执行时出现的错误,默认情况下,错误会以“error/http500.asp”页面的形式返回到客户端。ASPError对象可以用来获取错误的详细信息,并在出现错误时重定向到指定的错误处理页面。

一、创建ASPError对象

当ASP页面遇到错误时,ASP会自动创建一个ASPError对象,并且在页脚中添加一个“On Error Resume Next”语句以启用错误处理。如果需要在自己的代码中使用ASPError对象,可以在错误处理语句中加入代码来访问该对象。以下是一个例子:

<%
On Error Resume Next
'执行代码
If Err.Number <> 0 Then
   Response.Write "错误码: " & Err.Number & "<br>"
   Response.Write "错误描述: " & Err.Description & "<br>"
   Response.Write "错误文件: " & Err.Source & "<br>"
   Response.Write "错误行号: " & Err.Line & "<br>"
   Response.Write "错误列号: " & Err.Column & "<br>"
End If
On Error Goto 0
%>

二、ASPError对象的属性

  1. Number:该属性返回错误代码。例如,如果出现“未定义的变量”错误,该属性返回“500”的值。

  2. Category:该属性返回错误的分类,例如“语法错误”、“运行时错误”等。

  3. Source:该属性返回错误的文件名及路径。

  4. Description:该属性返回错误的详细描述。

  5. Line:该属性返回错误所在的行数。

  6. Column:该属性返回错误所在的列数。

  7. ASPCode:该属性返回错误的ASP代码。

三、ASPError对象的方法

  1. Clear:清除所有的错误信息。在错误处理程序中调用这个方法可以确保在错误处理过程中不会出现任何其他错误。

  2. GetDescription:返回错误的详细描述。

  3. GetSource:返回发生错误的文件名及路径。

  4. GetASPCode:返回错误的ASP代码。

四、ASPError对象的用法

当ASP页面遇到错误时,ASP会自动将错误信息作为ASPError对象传递给下一个需要处理错误的语句。以下是一个例子:

<%
On Error Resume Next
'执行代码
If Err.Number <> 0 Then
   '发生错误,跳转到错误处理页面
   Response.Redirect "error.asp?Number=" & Err.Number & "&Description=" & Err.Description
End If
On Error Goto 0
%>

以上代码中,当错误发生时,我们会将用户重定向到一个名为“error.asp”的错误处理页面。在错误处理页面中,我们可以使用ASPError对象的属性和方法获取错误的详细信息,并将错误信息显示给用户。

总结:

在ASP页面中,如果出现错误,ASPError对象可以帮助我们更好地处理和调试程序。通过ASPError对象,我们可以获得错误的详细信息,并将用户重定向到错误处理页面。