@ Page

Define los atributos específicos de página (archivo .aspx) que utilizan el analizador y el compilador de páginas de ASP.NET.

<%@ Page attribute="value" [attribute="value"...] %>

Atributos

  • Async
    Convierte la página en un controlador asincrónico (es decir, hace que la página utilice una implementación de IHttpAsyncHandler para procesar las solicitudes).

    El valor predeterminado es false.

  • AsyncTimeOut
    Define el intervalo del tiempo de espera (en segundos) que se utiliza al procesar las tareas asincrónicas. El valor predeterminado es 45 segundos.

    El valor debe ser un entero.

  • AspCompat
    Cuando su valor es true, permite ejecutar la página en un subproceso que está en un apartamento de un solo subproceso (STA). Esto permite a la página llamar a componentes STA, por ejemplo, a un componente programado con Microsoft Visual Basic 6.0. Al establecer el valor de este atributo en true, la página también puede llamar a los componentes de COM+ 1.0 que requieren acceso a los objetos integrados ASP (páginas Active Server) sin administrar. El acceso a estos objetos se obtiene a través del objeto ObjectContext o del método OnStartPage. El valor predeterminado es false.

    Nota

    Al establecer el valor de este atributo en true, el rendimiento de la página puede disminuir. Para obtener más información, vea la sección Comentarios.

  • AutoEventWireup
    Indica si los eventos de la página están autoconectados. Su valor es true si la autoconexión de eventos está habilitada; en caso contrario, su valor es false. El valor predeterminado es true. Para obtener más información, vea Modelo de eventos de control de servidor Web ASP.NET.
  • Buffer
    Determina si el búfer de respuestas HTTP está habilitado. El valor es true si el búfer de páginas está habilitado; en caso contrario, su valor es false.

    El valor predeterminado es true.

  • ClassName
    Cadena que especifica el nombre de clase de la página que se compilará dinámicamente y de forma automática cuando se solicite la página. Este valor puede ser cualquier nombre de clase válido e incluir el espacio de nombres completo de una clase (nombre de clase completo). Si no se especifica ningún valor para este atributo, el nombre de clase de la página compilada se basa en el nombre de archivo de la página.

    Otra página puede hacer referencia al nombre de clase asignado a la primera página mediante la directiva @ Reference.

  • ClientTarget
    Indica el agente de usuario de destino (normalmente, un explorador Web como Microsoft Internet Explorer) para el que los controles de servidor ASP.NET deben representar contenido. Este valor puede ser cualquier alias válido que esté definido en la sección <clientTarget> del archivo de configuración de la aplicación.
  • CodeBehind
    Especifica el nombre del archivo compilado que contiene la clase asociada con la página. Este atributo no se usa en tiempo de ejecución.

    Nota

    Este atributo se incluye para asegurar la compatibilidad con las versiones anteriores de ASP.NET con el fin de implementar la característica de código subyacente. En ASP.NET 2.0, se ha de utilizar el atributo CodeFile para especificar el nombre del archivo de código fuente, junto con el atributo Inherits para especificar el nombre completo de la clase.

  • CodeFile
    Especifica una ruta de acceso al archivo de código subyacente al que se hace referencia para la página. Este atributo se utiliza junto con el atributo Inherits para asociar un archivo de código fuente subyacente a una página Web. Este atributo sólo es válido para las páginas compiladas.
  • CodeFileBaseClass
    Especifica una ruta de acceso a una clase base de una página y su clase de código subyacente asociada. Este atributo es opcional pero cuando se utiliza, también debe estar presente el atributo CodeFile. Utilice este atributo cuando desee implementar un escenario compartido, donde defina campos comunes (y de manera opcional, eventos asociados) en una clase base para hacer referencia a los controles declarados en una página Web. Debido al modelo de generación de código ASP.NET, si se definen los campos en una clase base sin utilizar este atributo, se generarán en tiempo de compilación nuevas definiciones de miembros para los controles declarados en la página Web (con un código auxiliar de clase parcial independiente) y el escenario deseado no funcionará. Sin embargo, si se utiliza el atributo CodeFileBaseClass para asociar la clase base a la página y la clase parcial (su nombre se asigna al atributo Inherits y se hace referencia a su archivo de código fuente mediante el atributo CodeFile) hereda de la clase base, los campos de la clase base podrán hacer referencia a los controles en la página después de la generación de código.
  • CodePage
    Indica el valor del esquema de codificación utilizado para la respuesta. El valor es un entero que sirve como identificador para el esquema de codificación. Para obtener una lista de posibles identificadores de CodePage, vea la clase Encoding.
  • CompilationMode
    Establece si debe compilarse la página mediante una cadena que especifica una o varias opciones enumeradas. El valor predeterminado es Always, de modo que las páginas .aspx se compilan de manera predeterminada. Para obtener información detallada, vea la enumeración CompilationMode.
  • CompilerOptions
    Cadena que contiene opciones del compilador para compilar la página. En C# y Visual Basic, se trata de una secuencia de modificadores de línea de comandos del compilador. Para obtener más información sobre las opciones del compilador, vea Opciones del compilador de C# o Compilador de Visual Basic.
  • ContentType
    Define el tipo de contenido HTTP de la respuesta como tipo MIME estándar. Admite cualquier cadena de tipo de contenido HTTP válida. Para obtener una lista de posibles valores, busque MIME en MSDN Library.
  • Culture
    Indica la configuración de la referencia cultural para la página. El valor de este atributo debe ser un identificador de referencia cultural válido. Observe que los atributos LCID y Culture se excluyen mutuamente; si utiliza uno de estos atributos, no puede utilizar el otro en la misma página. Para obtener más información sobre los posibles valores de referencias culturas, vea la clase CultureInfo.
  • Debug
    Indica si la página debe compilarse con símbolos de depuración. Su valor es true si la página debe compilarse con símbolos de depuración; de lo contrario, su valor será false. Dado que este valor de configuración afecta al rendimiento, el valor del atributo sólo debe establecerse en true durante el desarrollo.
  • Description
    Proporciona una descripción de la página. El analizador de ASP.NET no tiene en cuenta este valor.
  • EnableEventValidation
    Habilita la validación de eventos en los escenarios de devolución de datos y devolución de llamada. Su valor es true si se validan los eventos; de lo contrario, es false. El valor predeterminado es true.
  • EnableSessionState
    Define los requisitos de estado de sesión para la página. Su valor es true si el estado de sesión está habilitado; es ReadOnly si el estado de sesión se puede leer pero no cambiar; en cualquier otro caso, su valor es false. El valor predeterminado es true. Estos valores no distinguen mayúsculas de minúsculas. Para obtener más información, vea Estado de sesión de ASP.NET.
  • EnableTheming
    Indica si se utilizan temas en la página. Su valor es true si se utilizan temas; de lo contrario, es false. El valor predeterminado es true.
  • EnableViewState
    Indica si se mantiene el estado de la vista en las solicitudes de página. Su valor es true si se mantiene el estado de la vista; de lo contrario, es false. El valor predeterminado es true.
  • EnableViewStateMac
    Indica si ASP.NET debe ejecutar una comprobación de autenticación de equipo (MAC) en el estado de vista de la página cuando ésta se devuelve desde el cliente. Su valor es true si se debe realizar la comprobación MAC en el estado de vista; de lo contrario, es false. El valor predeterminado es false.

    Nota

    Un MAC de estado de vista es una versión cifrada de la variable oculta que el estado de vista de una página almacena cuando se envía al explorador. Cuando se establece el valor de este atributo en true, se comprueba el estado de vista cifrado para asegurarse de que no se ha manipulado en el cliente. Observe que al establecer el valor de este atributo en true, se ve afectado el rendimiento porque el valor variable debe descifrarse y cifrarse para cada recorrido de ida y vuelta de la página.

  • ErrorPage
    Define una dirección URL de destino para la redirección cuando se produce una excepción de página no controlada.
  • Explicit
    Determina si la página se ha compilado mediante el modo Option Explicit de Visual Basic. true indica que la opción de compilación explícita de Visual Basic está habilitada y que todas las variables deben declararse con una instrucción Dim, Private, Public o ReDim; en caso contrario, false. El valor predeterminado es false.

    Nota

    Los lenguajes que no sean Visual Basic omiten este atributo. Además, esta opción tiene el valor true en el archivo de configuración Machine.config. Para obtener más información, vea Archivos de configuración del equipo.

  • Inherits
    Define la clase de código en segundo plano que hereda la página. Puede ser cualquier clase derivada de la clase Page. Se utiliza junto con el atributo CodeFile, que contiene la ruta de acceso al archivo de código fuente de la clase de código subyacente. Para obtener más información sobre las clases de código subyacente, vea Modelo de código de las páginas Web ASP.NET.
  • Language
    Especifica el lenguaje utilizado cuando se compilan todos los bloques de representación en línea (<% %> y <%= %>) y de declaraciones de código en la página. Los valores pueden representar cualquier lenguaje compatible con .NET Framework, incluidos Visual Basic, C# o JScript. Se puede utilizar y especificar sólo un lenguaje por página.
  • LCID
    Define el identificador de configuración regional de la página de formularios Web Forms.

    Nota

    Este identificador es un valor de 32 bits que define de forma única una configuración regional. ASP.NET utiliza la configuración regional predeterminada del servidor Web, si no se especifica otra configuración regional para la página de formularios Web Forms mediante este atributo. Observe que los atributos LCID y Culture se excluyen mutuamente; si utiliza uno de estos atributos, no puede utilizar el otro en la misma página. Para obtener más información sobre las configuraciones regionales, visite MSDN Library.

  • LinePragmas
    Determina si el motor en tiempo de ejecución debe generar directivas pragma de línea en el código fuente. Son opciones del compilador que utilizan a menudo las herramientas de depuración para marcar determinadas ubicaciones en un archivo de código fuente. Su valor es true si deben generarse directivas pragma de línea; de lo contrario, es false.
  • MaintainScrollPositionOnPostback
    Indica si debe devolverse al usuario a la misma posición en el explorador cliente después de la devolución de datos. Su valor es true si los usuarios deben devolverse a la misma posición; en caso contrario es false. El valor predeterminado es false.

    Nota

    Los desarrolladores pueden definir este atributo para todas las páginas estableciendo el valor del atributo maintainScrollPostitionOnPostback (observe que distingue mayúsculas de minúsculas en los archivos de configuración) en el elemento <pages> del archivo Web.config.

  • MasterPageFile
    Establece la ruta de acceso a la página principal de la página de contenido o página principal anidada. Admite rutas de acceso relativas y absolutas.
  • ResponseEncoding
    Indica el nombre del esquema de codificación utilizado para la respuesta HTTP que contiene el contenido de una página. El valor asignado a este atributo es un nombre de codificación válido. Para obtener una lista de los posibles nombres de codificación, vea la clase Encoding. Asimismo, puede llamar al método GetEncodings para obtener una lista de posibles nombres de codificación e identificadores.
  • SmartNavigation
    Indica si la página admite la función de desplazamiento inteligente de Internet Explorer 5.5 o posterior. Su valor es true si hasta habilitado el desplazamiento inteligente; en caso contrario, es false. El valor predeterminado es false.

    El valor de la propiedad SmartNavigation de la página también puede establecerse en código pero, en general, debe establecerse utilizando el atributo con la directiva @ Page. Para obtener más información sobre cómo esta función mejora el desplazamiento del usuario en las páginas Web, vea la propiedad SmartNavigation.

  • Src
    Especifica una ruta de acceso a un archivo de código fuente que contiene código vinculado a la página. En el archivo de código fuente vinculado, se puede incluir lógica de programación para la página en una clase o en bloques de declaraciones de código.

    Se puede utilizar el atributo Src para vincular proveedores de generación a la página. Para obtener más información, vea la clase BuildProvider. Además, en las versiones de ASP.NET anteriores a 2.0, se utilizaba el atributo Src como alternativa para vincular un archivo de código subyacente a una página. En ASP.NET 2.0, el procedimiento preferido para vincular un archivo de código fuente subyacente a una página consiste en utilizar el atributo Inherits para especificar una clase, junto con el atributo CodeFile para especificar la ruta de acceso al archivo de código fuente de la clase.

  • Strict
    Indica que la página debe compilarse mediante el modo Option Strict de Visual Basic. Su valor es true si está habilitado el modo Option Strict; en caso contrario, es false. El valor predeterminado es false.

    Nota

    Los lenguajes que no sean Visual Basic omiten este atributo.

  • StyleSheetTheme
    Especifica un identificador de tema válido que se va a utilizar en la página. Cuando se establece el valor de StyleSheetTheme, los controles individuales pueden reemplazar la configuración de estilo incluida en un tema. Por lo tanto, un tema puede proporcionar la apariencia global de un sitio, mientras que la configuración incluida en el atributo StyleSheetTheme permite personalizar determinados valores en una página y sus controles individuales.
  • TargetSchema
    Especifica el nombre de un esquema que valida el contenido de la página. Tiene sólo una finalidad descriptiva; en realidad, no se realiza ninguna validación y el analizador omite el atributo.
  • Theme
    Especifica un identificador de tema válido que se va a utilizar en la página. Cuando se establece el valor del atributo Theme sin que se utilice el atributo StyleSheetTheme, se reemplaza la configuración de estilo individual de los controles, lo que permite crear una apariencia homogénea y consistente en una página.
  • Title
    Especifica un título para la página que se representa entre las etiquetas HTML <title> de la respuesta. Al título también se puede obtener acceso mediante programación como una propiedad de la página. Para obtener información detallada, vea la propiedad Title.
  • Trace
    Indica si está habilitado el seguimiento. Su valor es true si está habilitado; en caso contrario, es false. El valor predeterminado es false. Para obtener más información, vea Seguimiento en ASP.NET.
  • TraceMode
    Indica cómo se muestran los mensajes de seguimiento de la página cuando está habilitado el seguimiento. Los valores posibles son SortByTime y SortByCategory. El valor predeterminado, cuando el seguimiento está habilitado, es SortByTime. Para obtener más información sobre el seguimiento, vea Seguimiento en ASP.NET.
  • Transaction
    Indica si la página admite transacciones. Los posibles valores son Disabled, NotSupported, Supported, Required y RequiresNew. El valor predeterminado es Disabled.
  • UICulture
    Especifica la configuración de la referencia cultural de la interfaz de usuario (UI) que se va a usar para la página. Admite cualquier valor válido de referencia cultural de la interfaz de usuario.
  • ValidateRequest
    Indica si se debe producir la validación de las solicitudes. Si su valor es true, la validación de las solicitudes comprueba todos los datos de entrada y los compara con una lista incluida en el código de valores potencialmente peligrosos. Si se encuentra una correspondencia con la lista, se genera una excepción HttpRequestValidationException. El valor predeterminado es true.

    Esta función está habilitada en el archivo de configuración del equipo (Machine.config). Se puede deshabilitar en el archivo de configuración de la aplicación (Web.config) o en la página estableciendo el valor de este atributo en false.

    Nota

    Esta funcionalidad ayuda a reducir el riesgo de ataques de secuencias de comandos entre sitios para páginas sencillas y aplicaciones ASP.NET. Una aplicación que no valide de forma apropiada la entrada de los usuarios puede sufrir muchos tipos de ataques de entrada incorrecta, incluidos ataques de secuencias de comandos entre sitios e inyecciones de Microsoft SQL Server. No existe otro modo mejor que evaluar concienzudamente todas las formas de entrada en una aplicación y asegurarse de que están todas debidamente validadas o codificadas, o saber que la aplicación ha escapado antes de manipular datos o de enviar información al cliente.

  • ViewStateEncryptionMode
    Determina cómo se cifra el estado de vista, con tres posibles valores enumerados:Auto, Always o Never. El valor predeterminado es Auto, lo que significa que se cifra el estado de vista si así lo solicita un control individual. Para obtener más información, vea la enumeración ViewStateEncryptionMode.
  • WarningLevel
    Indica el nivel de advertencia del compilador en el que el compilador debe tratar las advertencias como errores y, por lo tanto, anular la compilación de la página. Los posibles niveles de advertencia van del 0 al 4. Para obtener más información, vea la propiedad WarningLevel.

Comentarios

Esta directiva sólo se puede utilizar en páginas de formularios Web Forms. Se puede incluir sólo una directiva @ Page por cada archivo .aspx. Además, se puede definir sólo un atributo Language por directiva @ Page porque se puede utilizar sólo un lenguaje por página. Dado que se proporcionan los valores predeterminados más comunes para la mayoría de los atributos, ya sea en código fuente o en archivos de configuración, a menudo resulta necesario agregar un amplio conjunto de atributos a la directiva. Generalmente, se debe agregar el conjunto mínimo de atributos requeridos para especificar las características deseadas de una página. Si hay un atributo común que desee aplicar a todas las páginas, por ejemplo, si desea habilitar el seguimiento en todas las páginas, considere la posibilidad de habilitar la característica en el archivo Web.config en lugar de agregar el atributo Trace a cada página.

Nota

La directiva @ Page tiene varios atributos en común con otras directivas que se aplican a un archivo de código fuente completo, como la directiva @ Control (que se utiliza en archivos .ascx para los controles de usuario Web) y la directiva @ Master (que se utiliza en los archivos .master para las páginas principales).

Si desea definir varios atributos para la directiva @ Page, separe cada par de atributo y valor con un solo espacio. Para un atributo específico, no incluya un espacio a ambos lados del signo de igualdad (=) que conecta el atributo con su valor. Para obtener un ejemplo, vea la sección Ejemplo de este tema.

Los desplazamientos inteligentes son una característica de ASP.NET compatible con Internet Explorer 5.5 y posterior. Permite la actualización de una página mientras se mantienen la posición de desplazamiento y el foco del elemento entre los desplazamientos, de modo que sólo se almacena una página en el historial del explorador y no se produce el parpadeo normalmente asociado a la actualización de una página Web. Los desplazamientos inteligentes son los más recomendables con las páginas ASP.NET que requieren frecuentes devoluciones de datos pero sin contenido visual que no cambia drásticamente en el momento de la devolución. Téngalo en cuenta cuando decida si va a establecer este atributo en true.

Si se establece el valor del atributo AspCompat en true para una página y se usa un constructor para crear un componente COM antes de programar la solicitud, se ejecutará en un subproceso MTA (apartamento multiproceso). Hacer esto provoca una importante degradación en el rendimiento del servidor Web. Para evitar este problema, se deben crear los componentes COM sólo desde uno de los eventos Page (como Page_Load, Page_Init, etc.) o uno de los métodos Page. Asimismo, es necesario asegurarse de que no se creen los objetos durante la construcción de la página.

En el siguiente ejemplo de código, se muestra el procedimiento recomendado para crear una instancia de un objeto COM en una página con el atributo AspCompat habilitado.

<%@ Page AspCompat="true" language="C#" %>
<script runat="server" >

MyComObject comObj;

public void Page_Load(){
   // Use comObj here when the code is running on the STA thread pool.
   comObj = New MyComObject();
   // Do something with the combObj object.
}
<%@ Page AspCompat="true" language="VB" %>
<script runat="server" >

    Dim comObj As MyComObject 

    Public Sub Page_Load()
     'Use comObj here when the code is running on the STA thread pool.
     comObj = New MyComObject()
     ' Do something with the combObj object.
    End Sub
</script>

Nota

Agregar una directiva @ Master a una página principal no permite usar la misma declaración de directiva en las páginas que dependen de la página principal. En su lugar, se debe utilizar el elemento <pages> para definir las directivas de página de manera global.

Ejemplo

En el siguiente ejemplo de código se indica al compilador de páginas ASP.NET que utilice Visual Basic como lenguaje de código de servidor para la página y se establece el atributo ContentType MIME HTTP predeterminado que se transmite al cliente en "text/xml".

<%@ Page Language="VB" ContentType="text/xml" %>

Vea también

Referencia

Sintaxis de directivas
@ Control
@ Master

Otros recursos

Sintaxis de páginas de ASP.NET