我有一个奇怪的问题。无法解释这种不一致的行为。
通常我会期望GET
加载我的第一个请求default.aspx
来触发Session_OnStart()
事件。但是,这只发生在重新启动 IIS 后的第一个页面加载时。在所有后续页面加载(清除 cookie 后)上,Session_OnStart()
不会在第一次GET
请求时触发。
POST
该页面还通过 jQuery Ajax 从客户端发出另外两个请求。Session_OnStart()
在所有后续页面加载时都会触发这两个请求(再次在清除 cookie 后)。
这是一个问题,因为SessionId
没有在第一个响应中设置,而是在对POST
请求的后续响应中设置了两次。所以应用程序最终会SessionIds
为每个用户创建两个。再次,这不会发生在 IIS 重新启动后的第一个页面加载上,这是奇怪的部分。
它是一个在 IIS 7 上运行的 asp.net 3.5 网站。