ASP.NET: ¿Cómo acceder a la sesión del controlador? [duplicar]
-
21-08-2019 - |
Pregunta
Esta pregunta ya tiene una respuesta aquí:
estoy tratando de almacenar algunos valores en el sesión de un Handler página , antes de hacer una redirección a una página Web Forms, que recogerá la sesión valores y pre-llenar el WebForm:
public class Handler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
...
context.Session["StackOverflow"] = "overflowing";
context.Response.Redirect("~/AnotherPage.aspx");
...
}
...
}
Excepto context.Session
objeto es nulo.
¿Cómo accedo estado de sesión desde un manejador?
Solución
System.Web.SessionState.IRequiresSessionState interfaz
public class Handler : IHttpHandler, System.Web.SessionState.IRequiresSessionState
{
public void ProcessRequest(HttpContext context)
{
context.Session["StackOverflow"] = "overflowing";
context.Response.Redirect("~/AnotherPage.aspx");
}
}
Otros consejos
Implementar IRequiresSessionState
IRequiresSessionState resolver esto?
Lo que trata de hacer un IHttpModule lugar y anulando BeginRequest?
public void Init(HttpApplication application)
{
application.BeginRequest += new EventHandler(context_BeginRequest);
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow