Deshabilitar el estado de sesión asp en ASP.NET

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

Versión del producto original:   ASP.NET
Número KB original:   306996

Resumen

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 usa para identificar al usuario en todas las páginas de la aplicación. Cuando el estado de sesión está deshabilitado, no se realiza un seguimiento de los datos de usuario y no se puede almacenar información en el objeto Session ni usar los eventos Session_OnStart Session_OnEnd or. Al deshabilitar el estado de sesión, puede aumentar el rendimiento si la aplicación o la página no requieren estado de sesión para habilitarla.

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

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 ASP.NET web.
  2. En el Explorador de soluciones, haga doble clic Web.config para ver el contenido de este archivo.
  3. Busque la <sessionState> sección y establezca el valor de modo en Off.
  4. Guarde el archivo o 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 solo a las páginas específicas que habilitan estos cambios:

  1. Inicie Visual Studio .NET y cree una nueva aplicación ASP.NET web.

  2. En el Explorador de soluciones, haga doble clic en el formulario web para el que desea deshabilitar el estado de la sesión.

  3. Seleccione la pestaña HTML.

  4. En la parte superior de la página, agregue EnableSessionState="false" la directiva @ Page. El atributo modificado debe ser similar al siguiente:

    <%@ Page language="c#" Codebehind="WebForm1.aspx.cs"
    AutoEventWireup="false" Inherits="WebApplication1.WebForm1"
    EnableSessionState="false" %>
    
  5. Guarde el archivo o 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 la sesión está deshabilitado, recibirá el siguiente mensaje de error:

El estado de sesión solo se puede usar cuando enableSessionState se establece en true, ya sea en un archivo de configuración o en la directiva Page

Referencias