2

我认为 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 时,它显示一个时间。两次都不一样。有任何想法吗?

谢谢

4

1 回答 1

3

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

类似,ASP.Net Session_Start 总是触发

于 2013-01-23T04:45:09.903 回答