Web页面(aspx)是否有任何理由来实现IHttpModule?

时间:2011-07-23 12:46:17

标签: c# asp.net

是否有任何情况我想要实施IhttpModule? 我想在BeginRequest上调用一些代码:

所以我这样做了:

public partial class ServerTransferThings : System.Web.UI.Page , IHttpModule
{
 ....
 public void Init(HttpApplication context)
 {
     context.BeginRequest += lalala;
 }
 void lalala(object sender, EventArgs e)
 {
 }
}

但它不起作用。我认为这是过早的阶段,因为beginRequest在创建Page对象之前执行。

我是对的吗?

解决方案是创建一个实现IHttpModule然后使用事件的DLL吗?

1 个答案:

答案 0 :(得分:2)

不,这是一种代码味道。页面离管道很远,无法访问BeginRequest

如果您想要HttpModule,可以在项目中创建一个类并在那里实现它们。您必须在web.config

中配置它们