Estado de sesión de ASP.NET
El estado de sesión de ASP.NET permite almacenar y recuperar los valores de un usuario cuando el usuario explora diferentes páginas ASP.NET que conforman una aplicación Web. HTTP es un protocolo sin estado, es decir, el servidor Web trata cada solicitud HTTP de página como solicitud independiente; de forma predeterminada, el servidor no retiene información alguna sobre los valores de las variables que se utilizan durante las solicitudes anteriores. En consecuencia, la creación de aplicaciones Web que necesitan mantener la información de estado entre las solicitudes (aplicaciones que implementan carros de la compra, desplazamiento de datos, etc.) puede resultar complicada. El estado de sesión de ASP.NET identifica las solicitudes recibidas desde el mismo explorador durante un período limitado de tiempo como una sesión y proporciona la capacidad de conservar los valores de las variables durante la duración de esa sesión.
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 FirstName y LastName para representar el nombre y el apellido de un usuario, y las variables se establecen en los valores recuperados de los controles TextBox.
Session("FirstName") = FirstNameTextBox.Text
Session("LastName") = LastNameTextBox.Text
Session["FirstName"] = FirstNameTextBox.Text;
Session["LastName"] = LastNameTextBox.Text;
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, a fin de que la información de la sesión esté disponible para varios servidores Web en una batería de servidores Web (y también se mantenga si se reinicia la aplicación ASP.NET), o en un almacén de datos personalizado. Para obtener más información, vea Modos de estado de sesión.
ASP.NET proporciona también algunas otras opciones para conservar los datos en una aplicación además del estado de sesión. Para obtener una comparación de cada opción, vea Recomendaciones de administración de estado de ASP.NET.
En esta sección
Información general sobre el estado de sesión de ASP.NET
Describe las diferentes funciones de la característica de estado de sesión.Identificadores de sesión
Describe cómo se identifica un explorador con una sesión determinada.Eventos de estado de sesión
Describe eventos de estado de sesión que se pueden agregar al archivo global.asax.Modos de estado de sesión
Trata los diferentes modos de almacenamiento de estado de sesión.Proteger el estado de sesión
Describe los problemas de seguridad que deben tenerse en cuenta al utilizar el estado de sesión.Cómo: Guardar valores en un estado de sesión
Proporciona un ejemplo de cómo se almacenan los valores de las variables de estado de sesión.Cómo: Leer los valores de un estado de sesión
Proporciona un ejemplo de cómo se leen los valores de las variables de estado de sesión.Implementar un proveedor de almacén de estados de sesión
Describe cómo se crea un proveedor de almacenes de estados de sesión personalizado e incluye un ejemplo.
Referencia
System.Web.SessionState
Proporciona las clases y las interfaces que habilitan el almacenamiento de los datos de la aplicación en el estado de sesión.Session
Proporciona acceso a la sesión a la solicitud HTTP actual.
Secciones relacionadas
Recomendaciones de administración de estado de ASP.NET
Describe las diferencias que existen entre las opciones de administración de estados de ASP.NET.Administración de estados en ASP.NET
Proporciona información general sobre los métodos disponibles para almacenar el estado de la aplicación en aplicaciones ASP.NET.