Compartir a través de


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

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