VB.NET自定义错误消息

时间:2010-10-20 07:57:04

标签: asp.net vb.net exception-handling

我喜欢在我的网站中使用自定义错误。 想法是捕获错误并向用户显示友好有意义的消息。 真实的错误详情(行号,页面...)将通过电子邮件发送给我。 我在VB.NET编程。 到目前为止,我发现的每个代码都说我必须使用global.asax。 我不喜欢使用global.asax,我只想制作一个错误页面,它会向我发送一封包含所有错误详细信息的电子邮件。 到现在为止,我转到web.config文件并插入以下行:

<customErrors defaultRedirect="test.aspx" mode="On"></customErrors>

test.aspx看起来像这样:

Sub Page_Error(sender as Object, e as EventArgs) Dim ctxOBJ As HttpContext Dim exceptionOBJ As Exception Dim errorInfoTXT As String ctxOBJ = HttpContext.Current() exceptionOBJ = ctxOBJ.Server.GetLastError() errorInfoTXT = "
Offending URL: " & ctxOBJ.Request.Url.ToString() & _ "
Source: " & exceptionOBJ.Source.ToString() & _ "
Message: " & exceptionOBJ.Message.ToString() & _ "
Stack trace: " & exceptionOBJ.StackTrace.ToString() & _ "

Target Site: " & exceptionOBJ.TargetSite.ToString() ctxOBJ.Response.Write (errorInfoTXT) ctxOBJ.Server.ClearError () End Sub

如果某个页面出现错误,则会将其重定向到test.aspx,但不会显示任何错误。

谢谢,

Roy Shoa。

1 个答案:

答案 0 :(得分:1)

您只需将其更改为

即可
Sub Page_Load(sender as Object, e as EventArgs)

错误页面不是错误的,因此它的错误事件永远不会触发。