ASP.NET - Session Finalizada

 
Vista:

Session Finalizada

Publicado por Christian (7 intervenciones) el 14/12/2006 17:22:17
Amigos... Ojala puedan ayudarme, pues ya me han ayudado bastante... y todo a sido muy util

tengo la siguiente duda....

Tengo variables de session cuando cargo la aplicacion por primera vez, esto es, en el Page_load de la pagina Default libero las variables con Session.Clear, luego valido al usuario, y asigno sus valores a variables de Session("Usuario"), Session("IdUsuario"), etc....
Lo que pasa, es que diseñé la aplicacion de manera que el ingrso de la informacion, esta por secciones, esto es, una pagina para cada tipo de informacion, y son como maximo 4 paginas, dependiendo del modulo. Cuando paso de una pagina a otra, guardo en la Base de Datos, la Ultima Etapa Finalizada, por ejemplo, termino de ingresar los datos de la 2º pagina, y en la base de datos se guarda un "2" en señal de que esa etapa fue finalizada con exito, esto es porque puede haber un corte de electricidad, un bloqueo de PC, o simplemente por que el usuario se fue a tomar un Cafe.... y cuando el usuario vuelve las variables de Session ya no estan, pues por el TimeOut desaparecen y no quiero incrementar el TimeOut.... LO que necesito es como puedo validar en cada pagina en su Page_Load si la session esta activa o no, revise las propiedades y metodos de Session, por si hay algun Is....., que lo permita, pero no lo encontré..... o talvez deberé comparar la sesion con vacio, algo asi como

If. Session("IdUsuario")="" then
response.Redirect("Default.aspx"
exit sub
endif

para que el usuario se vuelva a logear..?????

Espero entiendan mi duda.....

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 56
Bronce
Ha mantenido su posición en ASP.NET (en relación al último mes)
Gráfica de ASP.NET

RE:Session Finalizada

Publicado por Yamil Bracho (1136 intervenciones) el 14/12/2006 17:45:39
Si tendrian que chequear si el usuario ya tiene la sesion vencida..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Session Finalizada

Publicado por Christian (7 intervenciones) el 14/12/2006 18:18:18
Claro.... pero esa es mi duda....

Como...?????

Ahora encontré esto y lo probaré....

If Not Response.IsClientConnected Then
Response.Redirect("Default.aspx")
Exit Sub
End If
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Session Finalizada

Publicado por jim (5 intervenciones) el 14/12/2006 23:36:28
Cristian,

1. Debes compararlo con vacio, tal como muestra este codigo, si cumple lo envias a un nuevo formulario por ejemplo finsesion.aspx,

If. Session("IdUsuario")="" then
response.Redirect("finsesion.aspx")
endif

2. formulario finsesion.aspx
- adiciona un mensaje de aviso al usuario que finalizo su sesion trabajo.
- adiciona un linkbutton con el sgte texto "Hacer click para continuar"
- en html completa este codigo
<form id="Form1" method="post" runat="server" target="_top">

- cuando haga click en linkbutton debe ejecutar el sgte. codigo

Private Sub lbtLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lbtLogin.Click
Response.Redirect("default.htm")
End Sub

Saludos,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Session Finalizada

Publicado por Christian (1 intervención) el 15/12/2006 16:46:36
Gracias...

Ya lo habia solucionado asi, y pense que habria una instruccion directa.

Ahora....

Quise poner esas lineas en una clase, pero no puedo acceder al objeto Session, por lo que le paso el Contenido por valor, pero, no puedo usar el Response para redirigir, la idea es hacer una clase con un metodo para redirigir cuando la session (Texto) sea vacio. Como hacerlo????

Lo otro, ademas probe en el Global.asax con un msgbox en el evento Session_out, y funciona, pero no me redirecciona a la pagina que yo quiero, o sea; cuando se genera el termino de la sesion muestra el mensaje de que este acabó, pero despues agregue la linea para redireccion Response.Redirect("Default.aspx") y no funciona.

Bueno, por lo menos ya cumplo con lo que necesito

A todos muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar