Cómo deshabilitar el estado de sesión ASP en ASP.NET

Para obtener información adicional acerca de cómo realizar esta tarea mediante páginas Active Server de Microsoft, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
244465 cómo desactivar el estado de sesión de ASP en IIS y páginas Active Server

EN ESTA TAREA

Resumen

En este artículo paso a paso se muestra cómo deshabilitar el estado de sesión de ASP.NET.

Cuando el estado de sesión está habilitado, ASP.NET crea una sesión para cada usuario que tiene acceso a la aplicación, que se utiliza para identificar al usuario en las páginas de la aplicación. Cuando el estado de sesión está deshabilitado, no se realiza un seguimiento de los datos del usuario y no puede almacenar información en el objeto Session ni utilizar los eventos Session_OnStart o Session_OnEnd . Al deshabilitar el estado de sesión, puede aumentar el rendimiento si la aplicación o la página no requiere el estado de sesión para activarla.

En ASP.NET, si no utiliza el objeto Session para almacenar datos o si alguno de los eventos de sesión (Session_OnStart o Session_OnEnd) está controlado, el estado de sesión está deshabilitado. Cada vez que se actualiza una determinada página en una sesión del explorador, se crea un nuevo Session.SessionID .

Deshabilitar el estado de sesión en el nivel de aplicación

Los pasos siguientes muestran cómo deshabilitar el estado de sesión en el nivel de aplicación, lo que afecta a todas las páginas de la aplicación:
  1. Inicie Microsoft Visual Studio .NET y cree una nueva aplicación Web de ASP.NET.
  2. En el Explorador de soluciones, haga doble clic en Web.config para ver el contenido de este archivo.
  3. Busque la sección < sessionState > y establezca el valor de mode en Off.
  4. Guarde el archivo y el proyecto para deshabilitar el estado de sesión en todas las páginas de la aplicación.

Deshabilitar el estado de sesión en el nivel de página

Los pasos siguientes muestran cómo deshabilitar el estado de sesión en el nivel de página, lo que afecta a sólo las páginas concretas que habilitan estos cambios:
  1. Inicie Microsoft Visual Studio .NET y cree una nueva aplicación Web de ASP.NET.
  2. En el Explorador de soluciones, haga doble clic en el formulario Web para el que desea deshabilitar el estado de sesión.
  3. Haga clic en la ficha HTML .
  4. En la parte superior de la página, agregue EnableSessionState = "false" en la directiva @ Page . El atributo modificado debería ser similar al siguiente:
    <%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="WebApplication1.WebForm1" 
    EnableSessionState="false" %>

  5. Guarde el archivo y el proyecto para deshabilitar el estado de sesión en todas las páginas de la aplicación.

Solución de problemas

Si intenta establecer o recuperar información cuando el estado de sesión está deshabilitado, recibirá el siguiente mensaje de error:
Estado de sesión sólo se puede utilizar cuando enableSessionState se establece en true, en un archivo de configuración o en la directiva Page

Referencias

Para obtener más información acerca del estado de sesión, consulte los temas siguientes en la documentación del Kit de desarrollo de Software (SDK) de.NET Framework:
Propiedades

Id. de artículo: 306996 - Última revisión: 22 ene. 2017 - Revisión: 2

Comentarios