Share via


<Application-Element> (.NET Native)

Dient als Container für anwendungsweite Typen und Typmember, deren Metadaten zur Laufzeit für die Reflektion verfügbar sind, und wendet Laufzeitreflektionsrichtlinien auf alle Programmelemente in einer App an.

<Directives-Element><Application-Element> (rd.xml)

Syntax

<Application Activate="policy_setting"
             Browse="policy_setting"
             Dynamic="policy_setting"
             Serialize="policy_setting"
             DataContractSerializer="policy_setting"
             DataContractJsonSerializer="policy_setting"
             XmlSerializer="policy_setting"
             MarshalObject="policy_setting"
             MarshalDelegate="policy_setting"
             MarshalStructure="policy_setting" />

Attribute und Elemente

In den folgenden Abschnitten werden Attribute sowie untergeordnete und übergeordnete Elemente beschrieben. In der Tabelle der untergeordneten Elemente bezieht sich die Richtlinie auf die Art von Metadaten, die für bestimmte Programmelemente zur Laufzeit verfügbar gemacht werden.

Attribute

attribute Attributtyp BESCHREIBUNG
Activate Spiegelung Optionales Attribut. Steuert den Laufzeitzugriff auf Konstruktoren, um die Aktivierung von Instanzen zu ermöglichen.
Browse Spiegelung Optionales Attribut. Steuert das Abfragen nach Informationen über die Typen oder das Auflisten der Typen, aber ermöglicht keinen dynamischen Zugriff zur Laufzeit.
Dynamic Spiegelung Optionales Attribut. Steuert den Laufzeitzugriff auf alle Typmember, einschließlich Konstruktoren, Methoden, Felder, Eigenschaften und Ereignisse, um die dynamische Programmierung zu ermöglichen.
Serialize Serialisierung Optionales Attribut. Steuert den Laufzeitzugriff auf Konstruktoren, Felder und Eigenschaften, um Serialisierung und Deserialisierung von Typinstanzen durch Bibliotheken wie das Newtonsoft JSON-Serialisierungsprogramm zu ermöglichen.
DataContractSerializer Serialisierung Optionales Attribut. Steuert die Richtlinie für die Serialisierung, die die System.Runtime.Serialization.DataContractSerializer-Klasse verwendet.
DataContractJsonSerializer Serialisierung Optionales Attribut. Steuert die Richtlinie für die JSON-Serialisierung, die die System.Runtime.Serialization.Json.DataContractJsonSerializer-Klasse verwendet.
XmlSerializer Serialisierung Optionales Attribut. Steuert die Richtlinie für die XML-Serialisierung, die die System.Xml.Serialization.XmlSerializer-Klasse verwendet.
MarshalObject Interop Optionales Attribut. Steuert die Richtlinie für das Marshalling von Verweistypen zu Windows-Runtime und COM.
MarshalDelegate Interop Optionales Attribut. Steuert die Richtlinie für das Marshalling von Delegattypen als Funktionszeiger zu systemeigenem Code.
MarshalStructure Interop Optionales Attribut. Steuert die Richtlinie für das Marshalling von Strukturen zu nativem Code.

Alle Attribute

Wert BESCHREIBUNG
policy_setting Die Einstellung für diese Richtlinie, die auf die Typen in der App angewendet werden soll. Mögliche Werte sind All, Auto, Excluded, Public, PublicAndInternal, Required Public, Required PublicAndInternal und Required All. Weitere Informationen finden Sie unter Richtlinieneinstellungen für die Laufzeitanweisung.

Untergeordnete Elemente

Element BESCHREIBUNG
<Assembly> Wendet die Richtlinie auf alle Typen in einer bestimmten Assembly an.
<Namespace> Wendet die Richtlinie auf alle Typen in einem bestimmten Namespace an.
<Typ> Wendet die Richtlinie auf einen bestimmten Typ, z. B. eine Klasse oder Struktur, an.
<TypeInstantiation> Wendet die Richtlinie auf einen konstruierten generischen Typ an. Beispielsweise kann ein <TypeInstantiation-Element> verwendet werden, um eine Richtlinie für einen List<String> Typ zu definieren.
<Methode> Wendet die Richtlinie auf eine Methode für einen bestimmten Typ an.
<MethodInstantiation> Wendet die Richtlinie auf eine konstruierte generische Methode an.
<Eigenschaft> Wendet die Richtlinie auf eine Eigenschaft für einen bestimmten Typ an.
<Feld> Wendet die Richtlinie auf ein Feld für einen bestimmten Typ an.
<Ereignis> Wendet die Richtlinie auf ein Ereignis für einen bestimmten Typ an.

Übergeordnete Elemente

Element BESCHREIBUNG
<Richtlinien> Das Stammelement einer Laufzeitanweisungsdatei.

Hinweise

Das <Directives-Element> kann null oder ein <Application> Element enthalten. Mehrere <Application>-Elemente in einer einzigen Reflektionsrichtliniendatei werden nicht unterstützt.

Ein <Application>-Element kann auf zwei Arten verwendet werden:

  • Als Container für die Definition der Programmelemente, deren Metadaten zur Laufzeit benötigt werden. In diesem Fall muss das <Application>-Element keine Attribute haben. Zum Zeitpunkt der Kompilierung durchsuchen Compilertools alle Bibliotheken, einschließlich der .NET Framework-Kernbibliotheken, nach Programmelementen, die durch untergeordnete Elemente des <Application>-Elements identifiziert werden. Im Gegensatz dazu durchsuchen Compilertools nur die bibliothek, die <vom Library-Element> nach Programmelementen festgelegt wurde, die durch die untergeordneten Elemente von <Library> identifiziert werden.

  • Als ein Element, das anwendungsweite Richtlinien für Reflektion, Serialisierung und Interop festlegt. Die Attribute des <Application> Elements definieren eine anwendungsweite Richtlinie, die von den untergeordneten Elementen überschrieben werden kann, die durch das Element oder< das Library-Element> definiert werden.<Application>

Siehe auch