我正在使用HttpHandler构建的上传器。我想创建一个例程来处理所有未被捕获的错误,包括内容长度错误。
<%@ webhandler class="MyNamespace.UploadHandler" %>
Namespace MyNamespace
Class UploadHandler
Implements IHttpHandler
ReadOnly Property IsReusable As Boolean Implements IHttpHandler.IsReusable
Get
Return False
End Get
End Property
Sub Page_Error(sender As Object,e As EventArgs)
' Never fires
End Sub
Sub ProcessRequest(context As HttpContext) Implements IHttpHandler.ProcessRequest
...
End Sub
End Class
End Namespace
在httphandler本身处理任何404.13(请求超出请求内容长度)错误至关重要。
我还希望Page_Error能够处理任何未捕获的异常,但它永远不会触发。
答案 0 :(得分:1)
显然这不能做到。从网上搜索,似乎唯一可能捕获404.13错误的地方是Application_BeginRequest。我认为这不会对我的目的起作用,但也许会帮助别人。我将从JavaScript方面处理错误。
至于Page_Error - 这不是HttpHandler的一部分,因此唯一的解决方案是围绕ProcessRequest完成的工作的try / catch块。