Fijate el valor en el administrador de IIS, clic con botón derecho sobre sitios 
web, luego configuración de ASP.NET, luego ficha Administración de Estado , que 
valor dice en el tiempo de espera en minutos?  Si no tenes IIS, o no podes 
acceder al complemento de configuración MMC, podés fijarte en el archivo 
machine.config a ver que dice. En principio, el ajuste que hagas sobre 
web.config debería sobreescribir el ajuste de machine.config, pero nunca se 
sabe…

 

Carlos

 

De: [email protected] [mailto:[EMAIL PROTECTED] En nombre de Omar del Valle
Enviado el: Miércoles, 16 de Enero de 2008 07:52 a.m.
Para: [email protected]
Asunto: [puntonet] Problemas con Session

 

Igual se me escapa la opción en que estás fuera X tiempo y cuando te sientas en 
la PC vas a una páguina nueva por el menú.. en ese caso ya no tendría el ID en 
la Session y tampoco en el ViewState.. 

 

Pero la solución que me das me saca del problema momentaneo.. pues en el caso 
anterior.. no será tanto el problema de volver al login.. 

 

mil gracias Pata.. ;)
Omar

----- Mensaje original ----
De: Pata del Santo <[EMAIL PROTECTED]>
Para: [email protected]
Enviado: miércoles, 16 de enero, 2008 10:04:34
Asunto: [puntonet] Problemas con Session

Tendrías una clase cSesionEmp con un metodo 

   GuardarEmpleadoId(myID) 

que actualmente, solo hace

   Session("ID")=myID 

 

y otro 

    RecuperarEmpleadoId

que actualmente, solo hace

   myID=Session("ID")

   RETURN myID

 

Allí dentro de esta clase (sin tocar el código de los formularios) irías a 
mejorar la persistencia de este dato.

Estas son las modificaciones sugeridas:

 

Para guardar, lo guardas tanto en Session como en ViewState

   GuardarEmpleadoId(myID) 

     Session("ID")=myID 

     ViewState("ID")=myID 

 

Para recuperar, primero preguntas en ViewState (y no importa si el timeout de 
la session está vencido)

    RecuperarEmpleadoId

        myID=ViewState("ID")

         if myID isnot null

           Session("ID")=myID  'aprovecho a refrescar en Session

         else

            myID=Session("ID")

         endif

         RETURN myID

 

Esto escrito así, más o menos de memoria, para que entiendas que el ViewState 
lo utilizamos solo para extender ilimitadamente el tiempo de la session, sin 
necesidad de que el IIS guarde durante horas toda la información de todos los 
usuarios. La idea es que cada página guarda lo que ella necesita y puedas dejar 
el timeout de Session según viene por defecto.

 

Aunque otra cosa que podría hacerse, sin tocar nada de nada, sería persistir 
los datos de Session en BBDD.

 

Pata.

 

 

  _____  

De: [email protected] [mailto:[EMAIL PROTECTED] En nombre de Omar del Valle
Enviado el: miércoles, 16 de enero de 2008 9:44
Para: [email protected]
Asunto: [puntonet] Problemas con Session

No creo que sería la solución por varias razones:

 

1- recuerda que es un proyecto ya terminado.. un cambio que implique modificar 
el lugar donde se almacena el ID puede tomar algún tiempo.

2- El ViewState guarda el valor en la página, lo que de hacerlo requerie que 
busque otro mecanismo para pasar el valor entre páginas.. la idea me sirve 
entre postback en una misma página.. pero cuando me voy a otra página ya no 
tendría el id del cliente en el ViewState.

 

Gracias por la respuesta 

Salu2

Omar

----- Mensaje original ----
De: Pata del Santo <[EMAIL PROTECTED]>
Para: [email protected]
Enviado: miércoles, 16 de enero, 2008 9:28:03
Asunto: [puntonet] Problemas con Session

podrías guardar el id del empleado en el ViewState, es casi lo mismo.

 

 

  _____  

De: [email protected] [mailto:[EMAIL PROTECTED] En nombre de Omar del Valle
Enviado el: miércoles, 16 de enero de 2008 9:20
Para: [email protected]
Asunto: [puntonet] Problemas con Session

Hola gente,

 

Estoy teniendo un problema que me tiene algo trastornado el sueño:

 

Tengo un proyecto que acabo de poner en desarrollo. Este proyecto requiere de 
login y pass para poder acceder a todas sus opciones.. por defecto he dejado el 
timeout de la Session en 20 minutos tal y como viene.. 

 

Ahora se encuentran entrando los datos iniciales para poder trabajar con el 
proyecto..  esta tarea va unida al quehacer diario de los trabajadores de la 
compañía por lo que es posible que entrando algún dato tengan parar y atender a 
clientes para luego continuar.. 

 

En el momento de continuar.. ya saben.. login de nuevo.. y a empezar todo. He 
intentado subir los tiempos de timeout hasta 500 minutos para evitar este 
problema al menos durante el periodo de entrada de datos.. pero no hay forma 
que me funcione.

 

En mi PC local puedo demorarme lo que quiera sin tocar el proyecto que a mi 
regreso sigue funcionando el sistema normalmente. Tiene alguna relación el IIS 
con estos tiempos? alguna idea de como lograr que esto funcione? 

 

En el Web.Config tengo en el tag <form un timeout=500 y en el SessionState 
igual un timeout=500. 

 

Todas mis páginas heredan de una página base, donde siempre pregunto si el id 
del empleado (se guarda en session) es nulo, lo envio al login.

 

Salu2 y gracias 

Omar

 

  _____  


¡Capacidad ilimitada de almacenamiento en tu correo!
No te preocupes más por el espacio de tu cuenta con Correo Yahoo!:
http://correo.yahoo.com.mx/

 

 

  _____  


¡Capacidad ilimitada de almacenamiento en tu correo!
No te preocupes más por el espacio de tu cuenta con Correo Yahoo!:
http://correo.yahoo.com.mx/

 

 

  _____  


¡Capacidad ilimitada de almacenamiento en tu correo!
No te preocupes más por el espacio de tu cuenta con Correo Yahoo!:
http://correo.yahoo.com.mx/

Responder a