Are you calling Session.Abandon () anywhere in the code? I did this at the beginning of my web application to make sure I started with a fresh session. It turns out that any session variables stored even after "Abandon" will be deleted (even if SessionID was forced to remain unchanged by other means, for example, using Server.Transfer (Url, true) and not Response.Redirect), after postback .
i.e. I could track in my application, observe all session parameters, and then at the moment when any event handler was called (something with AutoPostBack = "True", for example, a checkbox or button on UpdatePanel), BAM, I had same SessionID but null session variables.
Removing the proactive call to Session.Abandon () solved my problem right away.
Jeff
source share