Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 在离开服务器之前,有没有办法获得访问权限并更改页面?_Asp.net_Httphandler_Global Asax_Ads - Fatal编程技术网

Asp.net 在离开服务器之前,有没有办法获得访问权限并更改页面?

Asp.net 在离开服务器之前,有没有办法获得访问权限并更改页面?,asp.net,httphandler,global-asax,ads,Asp.net,Httphandler,Global Asax,Ads,我想在页面内容从服务器发送时更改页面内容,因为我需要在作为广告持有者的html元素中添加一些广告 受保护的无效应用程序\u PreSendRequestContentobject发送者,EventArgs e这很好,但我无法访问HttpContext。我应该,我不知道: 但在这种方法中: 受保护的无效应用程序\u EndRequestobject发送方,EventArgs e我可以获取HttpContext,但在其中找不到服务器响应 我该怎么做 您可能希望实现HttpModule而不是globa

我想在页面内容从服务器发送时更改页面内容,因为我需要在作为广告持有者的html元素中添加一些广告

受保护的无效应用程序\u PreSendRequestContentobject发送者,EventArgs e这很好,但我无法访问HttpContext。我应该,我不知道:

但在这种方法中: 受保护的无效应用程序\u EndRequestobject发送方,EventArgs e我可以获取HttpContext,但在其中找不到服务器响应


我该怎么做

您可能希望实现HttpModule而不是global.asax。您可以在MSDN中找到操纵响应的模块示例:

另请参见本页以了解一些其他信息,例如为什么使用HttpModule而不是global.asax:

回答您的意见:以下是使用模块而不是全局的一些原因。有关更多信息,请查看上面链接的文档:

您可以在应用程序的Global.asax文件中实现模块的大部分功能[…],但是,模块比Global.asax文件具有优势,因为它们是封装的,可以一次性创建并在许多不同的应用程序中使用。 在IIS 7.0中,集成管道使托管模块能够订阅所有请求的管道通知,而不仅仅是ASP.NET资源的请求。 您可以通过web.config启用/禁用模块,而无需触摸任何代码 当必须创建依赖于应用程序事件的代码时,以及当以下条件为真时,应使用模块:

您希望在其他应用程序中重复使用该模块。 您希望避免将复杂代码放入Global.asax文件中。 该模块仅适用于管道IIS 7.0集成模式中的所有请求。 保护空隙 应用程序\u PreSendRequestContentobject 发件人,事件参数这很好但是 我无法访问HttpContext。 我应该,我不知道:


通过使用HttpContext.current,您始终可以访问当前请求的HttpContext。为什么提供HttpModule而不是Global.asax?我不能访问页面的内容吗?