Freigeben über


Serverseitige Objekttags – "Global.asax"

Das <object>-Tag kann verwendet werden, um neue Anwendungs- und Sitzungsvariablen unter Verwendung von deklarativer, tagbasierter Syntax zu deklarieren und zu erstellen. Diese werden beim Laden der Anwendung geladen und stehen für die Verwendung durch die Anwendung zur Verfügung. Das <object>-Tag kann in Abhängigkeit vom Verweistyp für das erstellte Objekt drei verschiedene Formen haben.

<object id="id" runat="server" scope="scope" class="Class Name"><object id="id" runat="server" scope="scope" progid="COM ProgID"/><object id="id" runat="server" scope="scope" classid="COM ClassID"/>

Attribute

Das <object>-Tag unterstützt die folgenden Attribute.

  • id
    Gibt einen eindeutigen Bezeichner an, der beim Deklarieren eines Objekts auf der Seite zu verwenden ist.
  • runat
    Muss auf server festgelegt werden, damit das Objekt innerhalb von ASP.NET ausgeführt wird. Bei allen anderen Einstellungen geht der Compiler der Seite davon aus, dass das <object>-Tag zur Behandlung an den Client gesendet werden soll.
  • scope
    Deklariert den Gültigkeitsbereich, in dem das Objekt deklariert wird. pipeline gibt an, dass das Objekt nur für die HTTP-Anforderung der enthaltenden ASP.NET-Anwendungsdatei verfügbar ist. application gibt an, dass das Objekt in die HttpApplicationState-Auflistung geschrieben wird. session gibt an, dass das Objekt in HttpSessionState geschrieben wird. Wenn kein Gültigkeitsbereich angegeben wird, wird das scope-Attribut standardmäßig auf pipeline festgelegt.
  • class
    Gibt die zu instanziierende .NET Framework-Klasse an.
  • progID
    Gibt die zu instanziierende COM-Komponente mit Hilfe des Programmbezeichners der Komponente an.
  • classID
    Gibt die zu instanziierende COM-Komponente mit Hilfe des Klassenbezeichners der Komponente an.

Parameter

  • id
    Ein eindeutiger Name, der zum Verweisen auf das Objekt im nachfolgenden Code zu verwenden ist.
  • Class Name
    Der Name der zu instanziierenden Klasse.
  • COM ProgID
    Die COM-Programm-ID der zu instanziierenden Komponente.
  • COM ClassID
    Die COM-Klassen-ID der zu instanziierenden Komponente.

Hinweise

Wenn der ASP.NET-Prozessor ein serverseitiges <object>-Tag in einer ASP.NET-Anwendungsdatei entdeckt, erstellt er für die Klasse eine Eigenschaft mit dem id-Attribut des Tags als Eigenschaftenname. Die implizite Get-Methode der Eigenschaft wird anschließend so konfiguriert, dass beim ersten Verweis auf die Eigenschaft ein Objekt erstellt wird.

Wenn das scope-Attribut des <object>-Tags auf application oder session festgelegt wird, wird der StaticObjects-Auflistung der entsprechenden Anwendung oder der StaticObjects-Auflistung des entsprechenden Sitzungsobjekts ein Verweis auf das Objekt (oder zumindest ausreichende Informationen für dessen problemlose Erstellung beim ersten Zugriff darauf) hinzugefügt. Das Objekt wird automatisch dem Namespace aller ASPX-Seiten innerhalb der Anwendung hinzugefügt.

Das classid-Attribut, das progid-Attribut und das class-Attribut schließen einander aus. Sie können jeweils nur eines dieser Attribute innerhalb eines einzelnen serverseitigen <object>-Tags verwenden.

Beispiel

Das folgende Beispiel veranschaulicht die Verwendung des <object>-Tags zum Erstellen eines ArrayList-Objekts auf einer Web Forms-Seite. Anschließend können Sie programmgesteuert auf das Objekt zugreifen, indem Sie den items-Wert seines id-Attributs verwenden.

<object id="items" class="System.Collections.ArrayList" runat="server"/>

Siehe auch

Syntax von "Global.asax"