[英]How do I add an event handler for every request in ASP.NET that will be handled by PageHandlerFactory
我想配置一个asp.net网站,以便仅当请求将由PageHandlerFactory
处理时, PageHandlerFactory
每个请求执行我的事件处理程序(例如,跟踪/记录来自请求对象的某些信息)。
我知道我可以在Application_BeginRequest
编写它,但是每种请求都会被调用(无论是* .axd,如果我在这里错了,请纠正我)。 HttpContext.Current.CurrentHandler
可能为null,因此我不能为处理程序类型添加条件逻辑。 由于某种原因(旧业务规则/检查),我无法将逻辑移至Application_EndRequest
。
使用可以尝试在asp.net中使用httphandler and httpmodule
它有一个事件LogRequest
LogRequest-在ASP.NET对当前请求执行任何日志记录之前发生。 即使发生错误,也会引发LogRequest事件。 您可以为LogRequest事件提供事件处理程序,以为请求提供自定义日志记录。
在ASP.net中有更多信息
ASP.NET使用不同的HTTP处理程序来提供不同的文件类型。 例如,网页的处理程序创建页面和控件对象,运行您的代码,并呈现最终的HTML。 ASP.NET默认处理程序:
1)页面处理程序(.aspx)–处理Web页面2)用户控制处理程序(.ascx)–处理Web用户控制页面3)Web服务处理程序(.asmx)–处理Web服务页面4)跟踪处理程序(trace.axd) –处理跟踪功能
您可以在asp.net的httphandler和httpmodule上获得更多的见解。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.