Foros del Web » Programación para mayores de 30 ;) » .NET »

Sesiones

Estas en el tema de Sesiones en el foro de .NET en Foros del Web. Buenas la verdad tengo una duda , me gustaría que alguien me ayudara con el manejo de sesiones en .net (c#) , tengo una base ...
  #1 (permalink)  
Antiguo 19/05/2011, 10:50
 
Fecha de Ingreso: abril-2009
Mensajes: 86
Antigüedad: 15 años
Puntos: 1
Sesiones

Buenas
la verdad tengo una duda , me gustaría que alguien me ayudara con el manejo de sesiones en .net (c#) , tengo una base de datos en Oracle con una tabla llamada usuario que tiene dos campos id y nombre , me gustaría ver un ejemplo o que me expliquen como manejaría una sesión en asp.net para que entre a la aplicación , valide en que cada página ese usuario y lo controle.
Pueden existir varios usuarios.
muchas gracias
  #2 (permalink)  
Antiguo 19/05/2011, 11:08
 
Fecha de Ingreso: enero-2008
Mensajes: 201
Antigüedad: 16 años, 3 meses
Puntos: 39
Respuesta: Sesiones

No se si será la mejor forma ya que no tengo muchos conocimientos sobre las sesiones en ASP.NET con C#, pero esto funciona:

Para crearla:
Código C#:
Ver original
  1. Session["id"] = id;

Con esto compruebas si existe y lees el valor:
Código C#:
Ver original
  1. int id;
  2. if(Session["id"] != null)
  3.    id = int.parse(Session["id"].ToString());

Para crearla hazlo en el evento Clic del botón del formulario de login (por ejemplo). Para comprobarla en el evento Load de cada página.
  #3 (permalink)  
Antiguo 19/05/2011, 14:10
 
Fecha de Ingreso: abril-2009
Mensajes: 86
Antigüedad: 15 años
Puntos: 1
Respuesta: Sesiones

Muchas gracias por tu respuesta , me podrías decir que pongo en cada formulario de mi aplicación ,este código lo pongo en el formulario de login , pero como valido la sesión en cada formulario , por ejemplo en php seria en cada pagina el evento sesion.start o destroy (como seria en .net con c#) gracias.
  #4 (permalink)  
Antiguo 19/05/2011, 16:01
 
Fecha de Ingreso: febrero-2010
Ubicación: México
Mensajes: 738
Antigüedad: 14 años, 2 meses
Puntos: 37
Respuesta: Sesiones

Prueba en el evento Load de tu página. ¿Qué validación necesitas realizar?
__________________
http://ka0stj.wordpress.com/
  #5 (permalink)  
Antiguo 19/05/2011, 18:02
 
Fecha de Ingreso: enero-2008
Mensajes: 201
Antigüedad: 16 años, 3 meses
Puntos: 39
Respuesta: Sesiones

Cita:
Iniciado por dalopeza Ver Mensaje
Muchas gracias por tu respuesta , me podrías decir que pongo en cada formulario de mi aplicación ,este código lo pongo en el formulario de login , pero como valido la sesión en cada formulario , por ejemplo en php seria en cada pagina el evento sesion.start o destroy (como seria en .net con c#) gracias.
Para validarlo es solo comprobar si existe (distinto de null). No hay session_start() o session_destroy() como en PHP, al asignar el valor a la variable es como hacer session_start() y al asignarle null es como hacer session_destroy().

En el que asignas valor a la variable solo en el formulario de login, en el evento Click del botón del formulario de login. El otro código en el que quieras comprobar el login, puedes hacer algo así:
Código C#:
Ver original
  1. int id;
  2. if(Session["id"] != null)
  3.    id = int.parse(Session["id"].ToString());
  4. else
  5.    Response.Redirect("login.aspx");
Para que reenvíe al formulario de login si no está logueado.

Pero insisto en que este es un tema en el que estoy profundizando a día de hoy por lo que no estoy seguro de que esa sea la mejor forma de manejar las sesiones, pero funciona de eso no tengo dudas.
  #6 (permalink)  
Antiguo 20/05/2011, 09:25
 
Fecha de Ingreso: abril-2009
Mensajes: 86
Antigüedad: 15 años
Puntos: 1
Respuesta: Sesiones

existe un forma recursiva de hacer el manejo de sesiones , como por ejemplo tener una clase con los datos de una tabla en de la base de datos , esos instanciarlos en archivo de login. y en cada pagina consultar un id de esa tabla?

Etiquetas: sesiones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:03.