我在Global.asax文件中(在ASP.NET MVC应用程序中)使用Application_BeginRequest事件观察到一些非常令人困惑的行为.当通过调试器运行时,如果我刷新浏览器(IE7),此事件将触发两次.如果我单击链接或以其他方式手动请求页面,它会触发一次 - 如预期的那样.
为什么刷新导致BeginRequest触发两次?
我正在通过一个全新的MVC项目来观察这一点,其中以下内容被加入到Global.asax.cs中
protected void Application_BeginRequest() {
//executed twice
}
Run Code Online (Sandbox Code Playgroud)
对于上下文,我试图在此事件期间向HttpContext.Current.Items集合添加一个新对象,因此它将在整个请求过程中持续存在.显然,我不希望这次刷新请求发生两次!
asp.net ×1