31 votes

Asp.Net Session est null dans le fichier ashx

J'essaie d'accéder à la variable Session dans le gestionnaire ashx Asp.Net, comme indiqué ci-dessous.

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

Mais le context.Session est toujours Null dans la méthode ci-dessus. Comment accéder aux objets de session dans un fichier ashx?

94voto

Anton Gogolev Points 59794

Vous avez à "mettre en œuvre", soit IRequiresSessionState ou IReadOnlySessionState, avec l'ancien offrant un accès complet à la session, et de lui donner un accès en lecture seule.

Je cite "mettre en œuvre" ici, parce que ces deux sont soi-disant "marqueur interfaces", ce qui signifie qu'ils n'ont pas de membres.

2voto

taybriz Points 496

En VB, implémentez les interfaces mentionnées par Anton (IRequiresSessionState ou IReadOnlySessionState) comme suit:

 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
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X