Session State Not Available In This Context - In Global.asax

Jay picture Jay · Nov 9, 2012 · Viewed 19.1k times · Source

I am getting a 'session state not available in this context' error.

enter image description here

The error is nested in the sender parameter of a number of methods within the Global.asax file:

  • Application_BeginRequest
  • Application_AuthenticateRequest
  • Session_Start
  • Application_Error

The error happens on the very first page load (and all page loads thereafter).

I've added a completely new and empty page, WebForm1.aspx, to the project and made it my start page.

You'd think nothing could go wrong on an empty page. No code of mine is executed, as far as I can see, when loading an empty page. But I'm still getting the session state error.

My project works totally fine. No error pages are shown. There is no incorrect behavior at any time.

But the fact that this session error shows up in the sender parameter of my current project bugs me. This error is not generated in a blank, new project.

What can possibly be the cause of this error in my current project?

How can I trace where the error occurs? I can't set breakpoints in ASP.NET code that's under the hood. Or can I?

Here's my session configuration:

<pages enableSessionState="true" />
<sessionState mode="InProc" cookieless="false" timeout="20" />

Update:

I just found out that a brand new blank project also has this error in the sender object. It's visible in the Application_BeginRequest and Application_AuthenticateRequest methods. But the blank project isn't generating the Application_Error event, like my other project is.

Answer

Emmanuel N picture Emmanuel N · Nov 9, 2012

You are requesting for session state too early in the cycle. you need to do it in Application_AcquireRequestState