Ver Mensaje Individual
  #2 (permalink)  
Antiguo 13/06/2008, 08:25
Avatar de gustavoh10
gustavoh10
 
Fecha de Ingreso: diciembre-2005
Ubicación: ARGENTINA
Mensajes: 196
Antigüedad: 19 años, 1 mes
Puntos: 3
Respuesta: Como Gatillar el Session_End()??

Hola, lo que pasa es que no podes hacer un Response.Redirect(""); desde el evento Session_End en el Global.asax.

Una solucion podria ser que verifiques la variable
Session["SesionActiva"] = "1";
en el page_load de cada pagina y veas si existe. Si no existe quiere decir que la session expiro y ahi redireccionas a la pagina que quieras,

ejemplo

//Clase Controladora de la session
Código PHP:

public class ManejaSession System.Web.UI.Page
{
        protected 
virtual void Page_Load(object senderEventArgs e)
        {
            
String activa = (String)Session["SesionActiva"] = "1";
            if (
activa == null)
            {                
                
Response.Redirect("Login.aspx");
            }
        }

//Pagina aspx
Código PHP:
//Sobreescribis el metodo page_load
public partial class Default : ManejaSession
{
    protected 
override void Page_Load(object senderEventArgs e)
    {
        
base.Page_Load(sendere);
    }

Simplemente haces que tus paginas aspx hereden del manejador de session que verificara si esta activa o no la session.

Esta es una solución, capas encotras una mejor
espero que te sirva

Saludos!