Zoh*_*aib 6 asp.net httpmodule global-asax
我收到以下错误
'事件处理程序只能在IHttpModule初始化期间绑定到HttpApplication事件.在以下代码中(粗体或双线**)
protected void Application_BeginRequest(object sender, EventArgs e)
{
HttpApplication app = (HttpApplication)sender;
**app.EndRequest += new EventHandler(Application_EndRequest);**
}
protected void Application_EndRequest(object sender, EventArgs e)
{
UnitOfWork.Commit();
}
Run Code Online (Sandbox Code Playgroud)
在Global.asax文件中提到.有人可以弄清楚,我缺少的地方吗?谢谢.
事件处理程序存在于应用程序的整个生命周期中,因此,您只需添加一次,而不是每次请求都添加它.事件本身将触发每个请求,每次引发事件时都会调用唯一的处理程序.
将它添加到global.asax中的Application_Start而不是Application_BeginRequest,或者更好的是,创建一个HTTP模块.
另外,我认为您甚至可能不需要事件处理程序.具有当前名称的方法将按类似于Page/Control AutoEventWireup(如Page_Load)的约定调用.请注意,有些人报告说,这可能会在ASP.NET MVC应用程序中出现问题.所以,我的建议是重命名函数,在Application_Start中添加事件处理程序,或者更好地在您创建的新HTTP模块中.
| 归档时间: |
|
| 查看次数: |
4449 次 |
| 最近记录: |