33

I am trying to access the Session variable in Asp.Net ashx handler as shown below.

public void ProcessRequest (HttpContext context) {
        context.Session["VariableName"] = Id;
    }

But the context.Session is always Null inside the above method. How do I access Session objects in ashx file?

Amitabh
  • 59,111
  • 42
  • 110
  • 159

2 Answers2

97

You have to "implement" either IRequiresSessionState or IReadOnlySessionState, with former providing full access to session, and the latter providing read-only access.

I'm quoting "implement" here because these two are so-called "marker interfaces", which means they have no members.

Anton Gogolev
  • 113,561
  • 39
  • 200
  • 288
2

In VB, implement the interfaces mentioned by Anton (IRequiresSessionState or IReadOnlySessionState) like this:

Public Class MyAshxFile

    Implements System.Web.IHttpHandler
    Implements System.Web.SessionState.IRequiresSessionState ''need this for session variables
    Implements System.Web.SessionState.IReadOnlySessionState ''need this for session variables
Taylor Brown
  • 1,689
  • 2
  • 17
  • 33