Recently I had a case where the customer had an issue with session variables. The claim was that if they use in-proc session state their session variables would work just fine, but if they changed the session mode to stateserver in web.config their sessions were lost.
<sessionState mode="StateServer" cookieless="UseCookies" stateConnectionString="tcpip=127.0.0.1:42424"/>
When looking at bit closer at the repro, it wasn?t really all session variables that were lost, it was only ones set in Page_Error, and when they were read in an error page they redirected to (with the customErrors setting in web.config) would be null.
Why is there a difference in this case between in-proc and out of process session state?
When you use in-proc session state, the session objects are stored in the memory of the process, and thus when you run code like Session[?mySessionVar?] = ?some ...
Go to the complete details ...