MVC3会话启动事件触发两次

时间:2013-01-23 04:35:22

标签: asp.net-mvc global-asax

我认为global.asax中的session_start事件应该只在我第一次访问网站上的页面时触发。但是我注意到在asp.net mvc3中我每次都会运行不同的路径。

实施例

http://webserver/home/index - runs once here (link 1) 
http://webserver/contact/index - runs once here (link 2)

我是否需要配置一些内容,以便session_start只运行一次?我通过将会话变量设置为当前日期时间并在布局页面上显示会话变量来测试它。当我从上面点击链接1时,它显示了一个时间,当我从上面点击链接2时,它显示了一个时间。两次都不同。有什么想法吗?

谢谢

1 个答案:

答案 0 :(得分:3)

如果Session_Start中未定义Session_EndGlobal.asax个处理程序,则当Session包中没有任何内容存储时,会为每个请求生成一个新的会话ID。这就是在您的情况下发生

类似,ASP.Net Session_Start always firing