@ Page

Definiert seitenspezifische Attribute (ASPX-Datei), die vom Parser und Compiler der ASP.NET-Seite verwendet werden.

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

Attribute

  • Async
    Macht die Seite zu einem asynchronen Handler (d. h., die Seite verwendet nun für die Verarbeitung von Anforderungen eine Implementierung von IHttpAsyncHandler).

    Der Standardwert ist false.

  • AsyncTimeOut
    Definiert das bei der Verarbeitung von asynchronen Aufgaben verwendete Timeoutintervall (in Sekunden). Der Standardwert beträgt 45 Sekunden.

    Der Wert muss eine ganze Zahl sein.

  • AspCompat
    Wenn dieses Attribut auf true festgelegt wird, kann die Seite in einem STA-Thread (Singlethread-Apartment) ausgeführt werden. Dadurch kann die Seite STA-Komponenten aufrufen, z. B. eine mit Microsoft Visual Basic 6.0 erstellte Komponente. Wenn dieses Attribut auf true festgelegt wird, kann die Seite auch COM+ 1.0-Komponenten aufrufen, für die der Zugriff auf die nicht verwalteten, in ASP (Active Server Pages) integrierten Objekte erforderlich ist. Auf diese kann über das ObjectContext-Objekt und die OnStartPage-Methode zugegriffen werden. Die Standardeinstellung ist false.

    Hinweis

    Wenn Sie dieses Attribut auf true festlegen, wirkt sich dies womöglich negativ auf die Leistung Ihrer Seite aus. Weitere Informationen finden Sie im Abschnitt "Hinweise".

  • AutoEventWireup
    Gibt an, ob die Ereignisse der Seite automatisch verknüpft werden. Das Attribut hat den Wert true, wenn die automatische Ereignisverknüpfung aktiviert ist, andernfalls false. Der Standardwert ist true. Weitere Informationen finden Sie unter Ereignismodell für ASP.NET-Webserversteuerelemente.
  • Buffer
    Gibt an, ob die HTTP-Antwortpufferung aktiviert ist. Wenn dies der Fall ist, hat das Attribut den Wert true, andernfalls false.

    Der Standardwert ist true.

  • ClassName
    Eine Zeichenfolge, die den Klassennamen für die Seite angibt, die bei Anforderung der Seite automatisch dynamisch kompiliert wird. Dieser Wert kann jeder gültige Klassenname sein und den vollständigen Namespace einer Klasse enthalten (ein vollqualifizierter Klassenname). Sofern für dieses Attribut kein Wert angegeben ist, basiert der Klassenname für die kompilierte Seite auf dem Dateinamen der Seite.

    Auf den der ersten Seite zugewiesenen Klassennamen kann von einer anderen Seite aus mit der @ Reference-Direktive verwiesen werden.

  • ClientTarget
    Gibt den Zielbenutzeragenten an (in der Regel ein Webbrowser wie Microsoft Internet Explorer), für den die ASP.NET-Serversteuerelemente Inhalte darstellen sollen. Dieser Wert kann jeder gültige Alias sein, der im <clientTarget>-Abschnitt der Konfigurationsdatei der Anwendung definiert ist.
  • CodeBehind
    Gibt den Namen der kompilierten Datei an, in der die Klasse enthalten ist, die der Seite zugeordnet ist. Dieses Attribut wird zur Laufzeit nicht verwendet.

    Hinweis

    Dieses Attribut dient der Kompatibilität mit früheren Versionen von ASP.NET. Damit wird das Code-Behind-Feature implementiert. In ASP.NET, Version 2.0, sollte jedoch stattdessen das CodeFile-Attribut verwendet werden, um den Namen der Quelldatei anzugeben, gemeinsam mit dem Inherits-Attribut zur Angabe des vollqualifizierten Klassennamens.

  • CodeFile
    Gibt für die Seite einen Pfad zur Code-Behind-Datei an, auf die verwiesen wird. Dieses Attribut wird gemeinsam mit dem Inherits-Attribut verwendet, um einer Webseite eine Code-Behind-Quelldatei zuzuordnen. Das Attribut ist nur für kompilierte Seiten gültig.
  • CodeFileBaseClass
    Gibt einen Pfad zu einer Basisklasse für eine Seite und ihre zugeordnete Code-Behind-Klasse an. Dieses Attribut ist optional. Falls es jedoch verwendet wird, muss auch das CodeFile-Attribut vorhanden sein. Verwenden Sie dieses Attribut, wenn Sie ein Freigabeszenario implementieren möchten, in dem Sie gemeinsam genutzte Felder (und, optional, zugeordnete Ereignisse) in einer Basisklasse definieren, um auf die in einer Webseite deklarierten Steuerelemente zu verweisen. Wenn Sie die Felder in einer Basisklasse ohne dieses Attribut definieren würden, würden aufgrund des ASP.NET-Codegenerierungsmodells zum Zeitpunkt der Kompilierung neue Memberdefinitionen für die in der Webseite deklarierten Steuerelemente (innerhalb einer separaten partiellen Stubklasse) generiert werden, und das gewünschte Szenario würde nicht funktionieren. Wenn Sie hingegen das CodeFileBaseClass-Attribut verwenden, um der Seite die Basisklasse zuzuordnen, und die partielle Klasse (deren Name dem Inherits-Attribut zugewiesen ist und auf deren Quelldatei das CodeFile-Attribut verweist) von der Basisklasse erben lassen, dann können die Felder in der Basisklasse nach der Codegenerierung auf die Steuerelemente in der Seite verweisen.
  • CodePage
    Gibt den Wert des für die Antwort verwendeten Codierungsschemas an. Der Wert ist eine ganze Zahl, die als ID für das Codierungsschema dient. Eine Liste möglicher CodePage-IDs finden Sie in der Encoding-Klasse.
  • CompilationMode
    Legt mithilfe einer Zeichenfolge, die eine von mehreren Enumerationsoptionen angibt, fest, ob die Seite kompiliert werden soll. Der Standardwert ist Always, somit werden ASPX-Seiten standardmäßig kompiliert. Ausführliche Informationen finden Sie in den Ausführungen zur CompilationMode-Enumeration.
  • CompilerOptions
    Eine Zeichenfolge mit Compileroptionen, die zum Kompilieren der Seite verwendet werden. In C# und Visual Basic ist dies eine Sequenz von Compiler-Befehlszeilenschaltern. Weitere Informationen zu Compileroptionen finden Sie unter C#-Compileroptionen oder Visual Basic-Compiler.
  • ContentType
    Definiert den HTTP-Inhaltstyp der Antwort als einen Standard-MIME-Typ. Unterstützt alle gültigen Zeichenfolgen für HTTP-Inhaltstypen. Für eine Liste möglicher Werte suchen Sie in MSDN Library nach MIME.
  • Culture
    Gibt die Kultureinstellungen der Seite an. Der Wert dieses Attributs muss einer gültigen Kultur-ID entsprechen. Beachten Sie, dass sich das LCID-Attribut und das Culture-Attribut gegenseitig ausschließen. Wenn Sie für eine Seite eines der beiden Attribute verwenden, müssen Sie auf das andere verzichten. Weitere Informationen über mögliche Kulturwerte finden Sie in der CultureInfo-Klasse.
  • Debug
    Gibt an, ob die Seite mit Debugsymbolen kompiliert werden soll. true, wenn die Seite mit Debugsymbolen kompiliert werden soll, andernfalls false. Da diese Einstellung die Leistung beeinflusst, sollten Sie das Attribut nur während der Entwicklung auf true festlegen.
  • Description
    Stellt eine Textbeschreibung der Seite bereit. Dieser Wert wird vom ASP.NET-Parser ignoriert.
  • EnableEventValidation
    Aktiviert die Validierung von Ereignissen in Postback- und Rückrufszenarios. Ist true, wenn Ereignisse überprüft werden sollen, andernfalls false. Der Standardwert ist true.
  • EnableSessionState
    Definiert Anforderungen für den Sitzungszustand der Seite. true, wenn der Sitzungszustand aktiviert ist, ReadOnly, wenn der Sitzungszustand gelesen, aber nicht geändert werden kann, andernfalls false. Der Standardwert ist true. Bei diesen Werten wird die Groß- und Kleinschreibung nicht berücksichtigt. Weitere Informationen finden Sie unter ASP.NET-Sitzungszustand.
  • EnableTheming
    Gibt an, ob auf der Seite Designs verwendet werden. true, wenn Designs verwendet werden, andernfalls false. Der Standardwert ist true.
  • EnableViewState
    Gibt an, ob der Ansichtszustand über Seitenanforderungen hinweg erhalten bleibt. true, wenn der Ansichtszustand beibehalten wird, andernfalls false. Der Standardwert ist true.
  • EnableViewStateMac
    Gibt an, dass ASP.NET eine Authentifizierungsüberprüfung des Computers (Machine Authentication Check, MAC) für den Ansichtszustand der Seite durchführen soll, wenn die Seite vom Client zurückgesendet wird. true, wenn eine MAC-Überprüfung für den Ansichtszustand durchgeführt werden soll, andernfalls false. Der Standardwert ist false.

    Hinweis

    Ein Ansichtszustands-MAC ist die verschlüsselte Version der verborgenen Variablen, in der der Ansichtszustand der Seite bei der Übermittlung zum Server erhalten bleibt. Wenn Sie dieses Attribut auf true festlegen, wird der verschlüsselte Ansichtszustand überprüft, um zu ermitteln, ob dieser auf dem Client manipuliert wurde. Beachten Sie, dass das Festlegen dieses Attributs auf true die Leistung beeinflusst, da der Variablenwert bei jedem Roundtrip der Seite entschlüsselt und verschlüsselt werden muss.

  • ErrorPage
    Definiert einen Ziel-URL für die Umleitung, die bei unbehandelten Seitenausnahmen erfolgt.
  • Explicit
    Bestimmt, ob die Seite mithilfe des Option Explicit-Modus von Visual Basic kompiliert wird. true gibt an, dass die explizite Kompilierungsoption von Visual Basic aktiviert ist und dass alle Variablen mithilfe einer der Anweisungen Dim, Private, Public oder ReDim deklariert werden müssen; andernfalls false. Der Standardwert ist false.

    Hinweis

    Dieses Attribut wird von allen anderen Sprachen außer Visual Basic ignoriert. Außerdem ist diese Option in der Konfigurationsdatei Machine.config auf true festgelegt. Weitere Informationen finden Sie unter Computerkonfigurationsdateien.

  • Inherits
    Definiert eine CodeBehind-Klasse für die zu vererbende Seite. Dies kann jede von der Page-Klasse abgeleitete Klasse sein. Wird mit dem CodeFile-Attribut verwendet, das den Pfad zur Quelldatei für die Code-Behind-Klasse enthält. Weitere Informationen zu Code-Behind-Klassen finden Sie unter Codemodell für ASP.NET-Webseiten.
  • Language
    Gibt die Sprache an, die beim Kompilieren aller Inlinewiedergaben (<% %> und <%= %>) und Codedeklarationsblöcke auf der Seite verwendet wird. Die Werte können jede von .NET Framework unterstützte Sprache darstellen, darunter Visual Basic, C# und JScript. Pro Seite kann immer nur eine Sprache verwendet und angegeben werden.
  • LCID
    Definiert den Gebietsschemabezeichner für die Web Forms-Seite.

    Hinweis

    Der Gebietsschemabezeichner ist ein 32-Bit-Wert, der ein Gebietsschema eindeutig definiert. ASP.NET verwendet das Standardgebietsschema des Webservers, sofern Sie mit diesem Attribut kein anderes Gebietsschema für eine Web Forms-Seite angeben. Beachten Sie, dass sich das LCID-Attribut und das Culture-Attribut gegenseitig ausschließen. Wenn Sie in einer Seite eines der beiden Attribute verwenden, müssen Sie auf das andere verzichten. Weitere Informationen über Gebietsschemas finden Sie unter MSDN Library.

  • LinePragmas
    Bestimmt, ob die Laufzeit Zeilenpragmas im Quellcode erstellen soll. Es handelt sich dabei um Compileroptionen, die häufig von Debugtools zur Kennzeichnung bestimmter Stellen in einer Quelldatei verwendet werden. true, wenn Zeilenpragmas generiert werden sollen, andernfalls false.
  • MaintainScrollPositionOnPostback
    Gibt an, ob der Benutzer nach einem Postback im Clientbrowser an dieselbe Position zurückkehren soll. true, wenn der Benutzer an dieselbe Position zurückkehren soll, andernfalls false. Der Standardwert ist false.

    Hinweis

    Entwickler können dieses Attribut für alle Seiten definieren, indem sie das maintainScrollPostitionOnPostback-Attribut im <pages>-Element der Datei Web.config festlegen. (Beachten Sie, dass in Konfigurationsdateien die Groß- und Kleinschreibung zu berücksichtigen ist.)

  • MasterPageFile
    Legt den Pfad zur Masterseite für die Inhaltsseite bzw. geschachtelte Masterseite fest. Unterstützt relative und absolute Pfade.
  • ResponseEncoding
    Gibt den Namen des Codierungsschemas an, das für die HTTP-Antwort verwendet wird, die den Inhalt einer Seite enthält. Der diesem Attribut zugewiesene Wert ist ein gültiger Codierungsname. Eine Liste möglicher Codierungsnamen finden Sie in der Encoding-Klasse. Für eine Liste möglicher Codierungsnamen und IDs können Sie auch die GetEncodings-Methode aufrufen.
  • SmartNavigation
    Gibt an, ob die Seite das SmartNavigation-Feature von Internet Explorer 5.5 oder höher unterstützt. true, wenn die intelligente Navigation aktiviert ist, andernfalls false. Der Standardwert ist false.

    Sie können die SmartNavigation-Eigenschaft für die Seite auch im Code festlegen. Es wird jedoch grundsätzlich empfohlen, dafür das Attribut mit der @ Page-Direktive zu verwenden. Weitere Informationen darüber, wie dieses Feature die Navigation in Webseiten für den Benutzer verbessert, finden Sie in der SmartNavigation-Eigenschaft.

  • Src
    Gibt einen Pfad zu einer Quelldatei an, die Code enthält, der mit der Seite verknüpft ist. In der verknüpften Quelldatei können Sie wählen, ob sich die Programmierlogik für die Seite entweder in einer Klasse oder in Codedeklarationsblöcken befinden soll.

    Sie können das Src-Attribut verwenden, um Buildanbieter mit der Seite zu verknüpfen. Weitere Informationen finden Sie in den Ausführungen zur BuildProvider-Klasse. In früheren ASP.NET-Versionen (vor ASP.NET 2.0) wurde das Src-Attribut auch als Alternative verwendet, um eine Code-Behind-Datei mit einer Seite zu verknüpfen. In ASP.NET 2.0 besteht die bevorzugte Herangehensweise zum Verknüpfen einer Code-Behind-Quelldatei mit einer Seite in der Verwendung des Inherits-Attributs zum Angeben der Klasse, und mithilfe des CodeFile-Attributs wird der Pfad zur Quelldatei für diese Klasse angegeben.

  • Strict
    Gibt an, dass die Seite mit dem Option Strict-Modus von Visual Basic kompiliert werden soll. true, wenn Option Strict aktiviert ist, andernfalls false. Der Standardwert ist false.

    Hinweis

    Dieses Attribut wird von allen anderen Sprachen außer Visual Basic ignoriert.

  • StyleSheetTheme
    Gibt einen gültigen Designbezeichner für die Seite an. Wenn das StyleSheetTheme-Attribut festgelegt ist, können einzelne Steuerelemente die in einem Design enthaltenen Stileinstellungen überschreiben. Somit kann mithilfe eines Designs das Gesamterscheinungsbild einer Site festgelegt werden, während Sie mit den im StyleSheetTheme-Attribut enthaltenen Einstellungen bestimmte Einstellungen einer Seite und ihrer einzelnen Steuerelemente anpassen können.
  • TargetSchema
    Gibt den Namen eines Schemas an, das die Inhalte der Seite überprüft. Dies dient ausschließlich einem beschreibenden Zweck, denn eine tatsächliche Validierung findet nicht statt, und das Attribut wird vom Parser ignoriert.
  • Theme
    Gibt einen gültigen Designbezeichner für die Seite an. Wenn das Theme-Attribut nicht mithilfe des StyleSheetTheme-Attributs festgelegt wird, werden einzelne Stileinstellungen der Steuerelemente überschrieben, sodass Sie für eine Seite ein einheitliches Aussehen erstellen können.
  • Title
    Gibt einen Titel für die Seite an, der in der Antwort innerhalb der <title>-HTML-Tags gerendert wird. Auf den Titel kann als Eigenschaft der Seite auch programmgesteuert zugegriffen werden. Ausführliche Informationen finden Sie unter der Title-Eigenschaft.
  • Trace
    Gibt an, ob die Ablaufverfolgung aktiviert ist. true, wenn die Ablaufverfolgung aktiviert ist, andernfalls false. Der Standardwert ist false. Weitere Informationen finden Sie unter ASP.NET-Ablaufverfolgung.
  • TraceMode
    Gibt an, wie Ablaufverfolgungsmeldungen für die Seite angezeigt werden sollen, wenn die Ablaufverfolgung aktiviert ist. Mögliche Werte sind SortByTime und SortByCategory. Der Standardwert bei aktivierter Ablaufverfolgung ist SortByTime. Weitere Informationen zur Ablaufverfolgung finden Sie unter ASP.NET-Ablaufverfolgung.
  • Transaction
    Gibt an, ob Transaktionen auf der Seite unterstützt werden. Mögliche Werte sind Disabled, NotSupported, Supported, Required und RequiresNew. Der Standardwert ist Disabled.
  • UICulture
    Gibt die für die Seite zu verwendenden Kultureinstellungen für die Benutzeroberfläche an. Alle gültigen Werte für die Kultureinstellungen für die Benutzeroberfläche werden unterstützt.
  • ValidateRequest
    Gibt an, ob eine Anfragevalidierung durchgeführt werden soll. Bei true vergleicht die Anforderungsvalidierung alle Eingabedaten mit einer festgeschriebenen Liste möglicher gefährlicher Werte. Bei einer Übereinstimmung wird eine HttpRequestValidationException-Ausnahme ausgelöst. Der Standardwert ist true.

    Dieses Feature wird in der Konfigurationsdatei des Computers (Machine.config) aktiviert. Sie können es in der Anwendungskonfigurationsdatei (Web.config) oder auf der Seite deaktivieren, indem Sie dieses Attribut auf false festlegen.

    Hinweis

    Diese Funktion reduziert für einfache Seiten und ASP.NET-Anwendungen das Risiko von siteübergreifenden Skriptangriffen. Anwendungen, bei denen die Benutzereingaben nicht ordnungsgemäß überprüft werden, können verschiedenen Arten von Angriffen mit fehlerhaften Eingaben ausgesetzt sein. Dazu gehören u. a. siteübergreifende Angriffe und Microsoft SQL Server-Injection-Angriffe. Es ist unumgänglich, alle Eingabeformen in einer Anwendung sorgsam auszuwerten und sicherzustellen, dass alle Eingaben ordnungsgemäß bewertet oder codiert werden bzw. die Anwendung vor dem ändern von Daten oder dem Rücksenden von Informationen an den Client geschlossen wird.

  • ViewStateEncryptionMode
    Bestimmt, wie der Ansichtszustand verschlüsselt wird. Drei mögliche Werte sind aufgelistet: Auto, Always oder Never. Der Standard ist Auto. Das bedeutet, dass der Ansichtszustand verschlüsselt wird, wenn ihn ein einzelnes Steuerelement anfordert. Weitere Informationen finden Sie unter der ViewStateEncryptionMode-Enumeration.
  • WarningLevel
    Gibt die Warnstufe an, ab der der Compiler Warnungen als Fehler behandeln und die Kompilierung der Seite abbrechen soll. Mögliche Warnstufen sind 0 bis 4. Weitere Informationen finden Sie unter der WarningLevel-Eigenschaft.

Hinweise

Diese Direktive kann nur für Web Forms-Seiten verwendet werden. Sie können pro ASPX-Datei nur eine @ Page-Direktive einschließen. Außerdem können Sie nur ein Language-Attribut pro @ Page-Direktive definieren, da pro Seite nur eine Sprache verwendet werden darf. Da entweder im Quellcode oder in den Konfigurationsdateien für die meisten Attribute die am häufigsten verwendeten Standardwerte angegeben sind, ist es zumeist unnötig, der Direktive eine umfangreiche Liste mit Attributen hinzuzufügen. Sie sollten im Allgemeinen nur ein Mindestmaß an notwendigen Attributen hinzufügen, um die gewünschten Features für eine Seite anzugeben. Wenn es ein gemeinsames Attribut gibt, das Sie auf alle Seiten anwenden möchten, z. B. wenn Sie die Ablaufverfolgung für alle Seiten aktivieren möchten, dann sollten Sie dieses Feature in der Datei Web.config aktivieren, anstatt das Trace-Attribut jeder einzelnen Seite hinzuzufügen.

Hinweis

Die @ Page-Direktive hat eine Reihe von Attributen mit anderen Direktiven gemeinsam, die sich auf eine gesamte Quelldatei beziehen, z. B. die @ Control-Direktive (die in ASCX-Dateien für Webbenutzersteuerelemente verwendet wird) und die @ Master-Direktive (die in MASTER-Dateien für Masterseiten verwendet wird).

Wenn Sie mehrere Attribute für die @ Page-Direktive definieren möchten, trennen Sie jedes Attribut-Wert-Paar durch ein einzelnes Leerzeichen. Verwenden Sie bei einem einzelnen Attribut das Gleichheitszeichen zwischen dem Attribut und dem zuzuweisenden Wert ohne Leerzeichen (=). Ein Beispiel finden Sie im Beispielabschnitt dieses Themas.

Intelligente Navigation ist ein ASP.NET-Feature, das in Internet Explorer, Version 5.5, und neueren Browsern unterstützt wird. Dabei kann eine Seite aktualisiert werden, während die Bildlaufposition und der Elementfokus zwischen den Navigationsschritten erhalten bleiben. Dadurch muss nur eine einzige Seite im Browserverlauf gespeichert werden, und das übliche Flackern beim Aktualisieren einer Webseite bleibt aus. Die Verwendung der intelligenten Navigation empfiehlt sich besonders bei ASP.NET-Seiten, die ein häufiges Postback erfordern, deren visueller Inhalt sich bei der Rückgabe jedoch nicht wesentlich ändert. Berücksichtigen Sie dies, wenn Sie entscheiden, ob Sie dieses Attribut auf true festlegen.

Wenn das AspCompat-Attribut einer Seite auf true festgelegt wird und Sie mit einem Konstruktor eine COM-Komponente erstellen, bevor die Anforderung geplant ist, wird diese in einem MTA (Multithreaded Apartment Thread)-Thread ausgeführt. Diese Vorgehensweise verursacht einen erheblichen Leistungsabfall des Webservers. Sie vermeiden dieses Problem, indem Sie COM-Komponenten nur aus Page-Ereignissen heraus (z. B. Page_Load, Page_Init usw.) oder aus einer der Page-Methoden heraus erstellen. Achten Sie außerdem darauf, dass Objekte nicht zum Zeitpunkt der Seitenkonstruktion erstellt werden.

Im folgenden Codebeispiel wird die empfohlene Vorgehensweise veranschaulicht, wie Sie bei aktiviertem AspCompat eine Instanz eines COM-Objekts in einer Seite erstellen.

<%@ 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>

Hinweis

Für das Hinzufügen einer @ Master-Direktive zu einer Masterseite ist es nicht zulässig, dieselbe Direktivendeklaration in Seiten zu verwenden, die von dem Master abhängig sind. Verwenden Sie stattdessen das <pages>-Element, um Seitendirektiven global zu definieren.

Beispiel

Das folgende Codebeispiel weist den ASP.NET-Seitencompiler an, Visual Basic als serverseitige Codesprache für die Seite zu verwenden, und legt das an den Client übermittelte HTTP-MIME-ContentType-Standardattribut auf "text/xml" fest.

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

Siehe auch

Referenz

Direktivensyntax
@ Control
@ Master

Weitere Ressourcen

Syntax von ASP.NET-Seiten