El estado de sesión de ASP.NET se habilita de forma
predeterminada en todas las aplicaciones ASP.NET. Las variables de estado de
sesión de ASP.NET se definen con facilidad y se recuperan mediante la propiedad
Session, que almacena los valores de las variables de la sesión como una
colección indizada por nombre.
Por ejemplo, mediante el ejemplo de código siguiente se
crean las variables de sesión Nombre y Apellido para representar el nombre y el
apellido de un usuario, y las variables se establecen en los valores
recuperados de los controles TextBox.
Session("Nombre") = txtNombre.Text
Session("Apellido") = txtApellido.Text
Las variables de sesión pueden ser cualquier tipo .NET
válido, podemos almacenar inclusive objetos
como datatable o dataset.
De forma predeterminada, ASP.NET almacena la información de
la sesión en el espacio de memoria de la aplicación ASP.NET. Si lo desea, puede
almacenar la información de la sesión mediante un servicio independiente para
que no se pierda si se reinicie la aplicación ASP.NET en un servidor SQL
Server.
Solicitudes simultáneas
El acceso al estado de sesión de ASP.NET es exclusivo para cada sesión, lo que significa que si dos usuarios diferentes realizan solicitudes simultáneas, se concederá simultáneamente acceso a dos sesiones diferentes. Sin embargo, si se realizan dos solicitudes simultáneas para la misma sesión (es decir, utilizando el mismo valor SessionID ), la primera solicitud recibida tendrá acceso exclusivo a la información de la sesión, mientras que la segunda solicitud se ejecutará cuando finalice la primera sesión o hasta que el bloqueo exclusivo de la información se libere porque la primera solicitud ha excedido el tiempo de espera del bloqueoModos de estado de sesión
In Proc, es el valor por defecto, todos los modos excepto
InProc y Off necesitan configuración adicional, como cadenas de conexión o configuración
de IP donde deberán conectarse.
- Modo InProc, que almacena el estado de sesión en memoria en el servidor Web. Éste es el valor predeterminado.
- Modo StateServer, que almacena el estado de sesión en un proceso distinto denominado "servicio de estado de ASP.NET". Este modo garantiza que el estado de sesión se mantiene si se reinicia la aplicación Web y que esté disponible también para varios servidores Web en una batería de servidores Web.
- Modo SQLServer, que almacena el estado de sesión en una base de datos de SQL Server. Este modo garantiza que el estado de sesión se mantiene si se reinicia la aplicación Web y que esté disponible también para varios servidores Web en una batería de servidores Web.
- Modo Custom, que permite especificar un proveedor de almacenamiento personalizado.
- Modo Off, que deshabilita el estado de sesión.
No hay comentarios:
Publicar un comentario