Teilen über


TypeBuilder.DefineNestedType Methode

Definition

Definiert einen geschachtelten Typ.

Überlädt

DefineNestedType(String, TypeAttributes, Type, Type[])

Definiert einen geschachtelten Typ mit seinem Namen, den Attributen, dem erweiterten Typ und den implementierten Schnittstellen.

DefineNestedType(String, TypeAttributes, Type, PackingSize, Int32)

Definiert einen geschachtelten Typ bei gegebenem Namen, Attributen, Größe und erweitertem Typ.

DefineNestedType(String, TypeAttributes, Type, PackingSize)

Definiert einen geschachtelten Typ bei gegebenem Namen, Attributen, erweitertem Typ und Komprimierungsgröße.

DefineNestedType(String)

Definiert einen geschachtelten Typ anhand des Namens.

DefineNestedType(String, TypeAttributes, Type)

Definiert einen geschachtelten Typ bei gegebenem Namen, Attributen und erweitertem Typ.

DefineNestedType(String, TypeAttributes)

Definiert einen geschachtelten Typ, wozu dessen Name und Attribute angegeben sind.

DefineNestedType(String, TypeAttributes, Type, Int32)

Definiert einen geschachtelten Typ bei gegebenem Namen, Attributen, Gesamtgröße des Typs und erweitertem Typ.

DefineNestedType(String, TypeAttributes, Type, Type[])

Quelle:
TypeBuilder.cs
Quelle:
TypeBuilder.cs
Quelle:
TypeBuilder.cs

Definiert einen geschachtelten Typ mit seinem Namen, den Attributen, dem erweiterten Typ und den implementierten Schnittstellen.

public:
 System::Reflection::Emit::TypeBuilder ^ DefineNestedType(System::String ^ name, System::Reflection::TypeAttributes attr, Type ^ parent, cli::array <Type ^> ^ interfaces);
public System.Reflection.Emit.TypeBuilder DefineNestedType (string name, System.Reflection.TypeAttributes attr, Type? parent, Type[]? interfaces);
public System.Reflection.Emit.TypeBuilder DefineNestedType (string name, System.Reflection.TypeAttributes attr, Type parent, Type[] interfaces);
[System.Runtime.InteropServices.ComVisible(true)]
public System.Reflection.Emit.TypeBuilder DefineNestedType (string name, System.Reflection.TypeAttributes attr, Type parent, Type[] interfaces);
member this.DefineNestedType : string * System.Reflection.TypeAttributes * Type * Type[] -> System.Reflection.Emit.TypeBuilder
[<System.Runtime.InteropServices.ComVisible(true)>]
member this.DefineNestedType : string * System.Reflection.TypeAttributes * Type * Type[] -> System.Reflection.Emit.TypeBuilder
Public Function DefineNestedType (name As String, attr As TypeAttributes, parent As Type, interfaces As Type()) As TypeBuilder

Parameter

name
String

Der Kurzname des Typs. name darf keine eingebetteten NULL-Werte enthalten.

attr
TypeAttributes

Die Attribute des Typs.

parent
Type

Der Typ, den der geschachtelte Typ erweitert.

interfaces
Type[]

Die vom geschachtelte Typ implementierten Schnittstellen.

Gibt zurück

Der definierte geschachtelte Typ.

Attribute

Ausnahmen

Das geschachtelte Attribut ist nicht angegeben.

- oder -

Dieser Typ ist versiegelt.

- oder -

Dieser Typ ist ein Array.

- oder -

Dieser Typ ist eine Schnittstelle, aber der geschachtelte Typ ist keine Schnittstelle.

- oder -

Die Länge von name ist 0 (null) oder größer als 1023.

- oder -

Dieser Vorgang würde einen Typ mit einem bereits vorhandenen FullName in der aktuellen Assembly erstellen.

name ist null.

- oder -

Ein Element des interfaces-Arrays ist null.

Hinweise

Diese Methode kann verwendet werden, um geschachtelte Typen zu erstellen, auch wenn die CreateType Methode für den einschließenden Typ aufgerufen wurde.

Der geschachtelte Typ muss vollständig sein, bevor Sie ihn mithilfe von GetMembers, GetNestedTypeoder GetNestedTypesreflektieren können.

Die Reihenfolge, in der geschachtelte Typen und Schachtelungstypen abgeschlossen werden sollen, finden Sie in der Beschreibung von CreateType .

Ein doppelter Name wird nicht notwendigerweise erstellt, wenn name er mit dem Namen eines zuvor definierten Typs oder geschachtelten Typs identisch ist. Um Duplikate zu sein, müssen die vollständigen Namen identisch sein, einschließlich des Namespaces und aller Schachtelungstypen.

Gilt für:

DefineNestedType(String, TypeAttributes, Type, PackingSize, Int32)

Quelle:
TypeBuilder.cs
Quelle:
TypeBuilder.cs
Quelle:
TypeBuilder.cs

Definiert einen geschachtelten Typ bei gegebenem Namen, Attributen, Größe und erweitertem Typ.

public:
 System::Reflection::Emit::TypeBuilder ^ DefineNestedType(System::String ^ name, System::Reflection::TypeAttributes attr, Type ^ parent, System::Reflection::Emit::PackingSize packSize, int typeSize);
public System.Reflection.Emit.TypeBuilder DefineNestedType (string name, System.Reflection.TypeAttributes attr, Type? parent, System.Reflection.Emit.PackingSize packSize, int typeSize);
public System.Reflection.Emit.TypeBuilder DefineNestedType (string name, System.Reflection.TypeAttributes attr, Type parent, System.Reflection.Emit.PackingSize packSize, int typeSize);
member this.DefineNestedType : string * System.Reflection.TypeAttributes * Type * System.Reflection.Emit.PackingSize * int -> System.Reflection.Emit.TypeBuilder
Public Function DefineNestedType (name As String, attr As TypeAttributes, parent As Type, packSize As PackingSize, typeSize As Integer) As TypeBuilder

Parameter

name
String

Der Kurzname des Typs. name darf keine eingebetteten NULL-Werte enthalten.

attr
TypeAttributes

Die Attribute des Typs.

parent
Type

Der Typ, den der geschachtelte Typ erweitert.

packSize
PackingSize

Die Komprimierungsgröße des Typs.

typeSize
Int32

Die Gesamtgröße des Typs.

Gibt zurück

Der definierte geschachtelte Typ.

Gilt für:

DefineNestedType(String, TypeAttributes, Type, PackingSize)

Quelle:
TypeBuilder.cs
Quelle:
TypeBuilder.cs
Quelle:
TypeBuilder.cs

Definiert einen geschachtelten Typ bei gegebenem Namen, Attributen, erweitertem Typ und Komprimierungsgröße.

public:
 System::Reflection::Emit::TypeBuilder ^ DefineNestedType(System::String ^ name, System::Reflection::TypeAttributes attr, Type ^ parent, System::Reflection::Emit::PackingSize packSize);
public System.Reflection.Emit.TypeBuilder DefineNestedType (string name, System.Reflection.TypeAttributes attr, Type? parent, System.Reflection.Emit.PackingSize packSize);
public System.Reflection.Emit.TypeBuilder DefineNestedType (string name, System.Reflection.TypeAttributes attr, Type parent, System.Reflection.Emit.PackingSize packSize);
member this.DefineNestedType : string * System.Reflection.TypeAttributes * Type * System.Reflection.Emit.PackingSize -> System.Reflection.Emit.TypeBuilder
Public Function DefineNestedType (name As String, attr As TypeAttributes, parent As Type, packSize As PackingSize) As TypeBuilder

Parameter

name
String

Der Kurzname des Typs. name darf keine eingebetteten NULL-Werte enthalten.

attr
TypeAttributes

Die Attribute des Typs.

parent
Type

Der Typ, den der geschachtelte Typ erweitert.

packSize
PackingSize

Die Komprimierungsgröße des Typs.

Gibt zurück

Der definierte geschachtelte Typ.

Ausnahmen

Das geschachtelte Attribut ist nicht angegeben.

- oder -

Dieser Typ ist versiegelt.

- oder -

Dieser Typ ist ein Array.

- oder -

Dieser Typ ist eine Schnittstelle, aber der geschachtelte Typ ist keine Schnittstelle.

- oder -

Die Länge von name ist 0 (null) oder größer als 1023.

- oder -

Dieser Vorgang würde einen Typ mit einem bereits vorhandenen FullName in der aktuellen Assembly erstellen.

name ist null.

Hinweise

Diese Methode kann verwendet werden, um geschachtelte Typen zu erstellen, auch wenn die CreateType Methode für den einschließenden Typ aufgerufen wurde.

Der geschachtelte Typ muss vollständig sein, bevor Sie ihn mithilfe von GetMembers, GetNestedTypeoder GetNestedTypesreflektieren können.

Die Reihenfolge, in der geschachtelte Typen und Schachtelungstypen abgeschlossen werden sollen, finden Sie in der Beschreibung von CreateType .

Ein doppelter Name wird nicht notwendigerweise erstellt, wenn name er mit dem Namen eines zuvor definierten Typs oder geschachtelten Typs identisch ist. Um Duplikate zu sein, müssen die vollständigen Namen identisch sein, einschließlich des Namespaces und aller Schachtelungstypen.

Gilt für:

DefineNestedType(String)

Quelle:
TypeBuilder.cs
Quelle:
TypeBuilder.cs
Quelle:
TypeBuilder.cs

Definiert einen geschachtelten Typ anhand des Namens.

public:
 System::Reflection::Emit::TypeBuilder ^ DefineNestedType(System::String ^ name);
public System.Reflection.Emit.TypeBuilder DefineNestedType (string name);
member this.DefineNestedType : string -> System.Reflection.Emit.TypeBuilder
Public Function DefineNestedType (name As String) As TypeBuilder

Parameter

name
String

Der Kurzname des Typs. name darf keine eingebetteten NULL-Werte enthalten.

Gibt zurück

Der definierte geschachtelte Typ.

Ausnahmen

Die Länge von name ist 0 (null) oder größer als 1023.

- oder -

Dieser Vorgang würde einen Typ mit einem bereits vorhandenen FullName in der aktuellen Assembly erstellen.

name ist null.

Hinweise

Diese Methode kann verwendet werden, um geschachtelte Typen zu erstellen, auch wenn die CreateType Methode für den einschließenden Typ aufgerufen wurde.

Der geschachtelte Typ muss vollständig sein, bevor Sie ihn mithilfe von GetMembers, GetNestedTypeoder GetNestedTypesreflektieren können.

Die Reihenfolge, in der geschachtelte Typen und Schachtelungstypen abgeschlossen werden sollen, finden Sie in der Beschreibung von CreateType .

Ein doppelter Name wird nicht notwendigerweise erstellt, wenn name er mit dem Namen eines zuvor definierten Typs oder geschachtelten Typs identisch ist. Um Duplikate zu sein, müssen die vollständigen Namen identisch sein, einschließlich des Namespaces und aller Schachtelungstypen.

Gilt für:

DefineNestedType(String, TypeAttributes, Type)

Quelle:
TypeBuilder.cs
Quelle:
TypeBuilder.cs
Quelle:
TypeBuilder.cs

Definiert einen geschachtelten Typ bei gegebenem Namen, Attributen und erweitertem Typ.

public:
 System::Reflection::Emit::TypeBuilder ^ DefineNestedType(System::String ^ name, System::Reflection::TypeAttributes attr, Type ^ parent);
public System.Reflection.Emit.TypeBuilder DefineNestedType (string name, System.Reflection.TypeAttributes attr, Type? parent);
public System.Reflection.Emit.TypeBuilder DefineNestedType (string name, System.Reflection.TypeAttributes attr, Type parent);
member this.DefineNestedType : string * System.Reflection.TypeAttributes * Type -> System.Reflection.Emit.TypeBuilder
Public Function DefineNestedType (name As String, attr As TypeAttributes, parent As Type) As TypeBuilder

Parameter

name
String

Der Kurzname des Typs. name darf keine eingebetteten NULL-Werte enthalten.

attr
TypeAttributes

Die Attribute des Typs.

parent
Type

Der Typ, den der geschachtelte Typ erweitert.

Gibt zurück

Der definierte geschachtelte Typ.

Ausnahmen

Das geschachtelte Attribut ist nicht angegeben.

- oder -

Dieser Typ ist versiegelt.

- oder -

Dieser Typ ist ein Array.

- oder -

Dieser Typ ist eine Schnittstelle, aber der geschachtelte Typ ist keine Schnittstelle.

- oder -

Die Länge von name ist 0 (null) oder größer als 1023.

- oder -

Dieser Vorgang würde einen Typ mit einem bereits vorhandenen FullName in der aktuellen Assembly erstellen.

name ist null.

Hinweise

Diese Methode kann verwendet werden, um geschachtelte Typen zu erstellen, auch wenn die CreateType Methode für den einschließenden Typ aufgerufen wurde.

Der geschachtelte Typ muss vollständig sein, bevor Sie ihn mithilfe von GetMembers, GetNestedTypeoder GetNestedTypesreflektieren können.

Die Reihenfolge, in der geschachtelte Typen und Schachtelungstypen abgeschlossen werden sollen, finden Sie in der Beschreibung von CreateType .

Ein doppelter Name wird nicht notwendigerweise erstellt, wenn name er mit dem Namen eines zuvor definierten Typs oder geschachtelten Typs identisch ist. Um Duplikate zu sein, müssen die vollständigen Namen identisch sein, einschließlich des Namespaces und aller Schachtelungstypen.

Gilt für:

DefineNestedType(String, TypeAttributes)

Quelle:
TypeBuilder.cs
Quelle:
TypeBuilder.cs
Quelle:
TypeBuilder.cs

Definiert einen geschachtelten Typ, wozu dessen Name und Attribute angegeben sind.

public:
 System::Reflection::Emit::TypeBuilder ^ DefineNestedType(System::String ^ name, System::Reflection::TypeAttributes attr);
public System.Reflection.Emit.TypeBuilder DefineNestedType (string name, System.Reflection.TypeAttributes attr);
member this.DefineNestedType : string * System.Reflection.TypeAttributes -> System.Reflection.Emit.TypeBuilder
Public Function DefineNestedType (name As String, attr As TypeAttributes) As TypeBuilder

Parameter

name
String

Der Kurzname des Typs. name darf keine eingebetteten NULL-Werte enthalten.

attr
TypeAttributes

Die Attribute des Typs.

Gibt zurück

Der definierte geschachtelte Typ.

Ausnahmen

Das geschachtelte Attribut ist nicht angegeben.

- oder -

Dieser Typ ist versiegelt.

- oder -

Dieser Typ ist ein Array.

- oder -

Dieser Typ ist eine Schnittstelle, aber der geschachtelte Typ ist keine Schnittstelle.

- oder -

Die Länge von name ist 0 (null) oder größer als 1023.

- oder -

Dieser Vorgang würde einen Typ mit einem bereits vorhandenen FullName in der aktuellen Assembly erstellen.

name ist null.

Hinweise

Diese Methode kann verwendet werden, um geschachtelte Typen zu erstellen, auch wenn die CreateType Methode für den einschließenden Typ aufgerufen wurde.

Der geschachtelte Typ muss vollständig sein, bevor Sie ihn mithilfe von GetMembers, GetNestedTypeoder GetNestedTypesreflektieren können.

Die Reihenfolge, in der geschachtelte Typen und Schachtelungstypen abgeschlossen werden sollen, finden Sie in der Beschreibung von CreateType .

Ein doppelter Name wird nicht notwendigerweise erstellt, wenn name er mit dem Namen eines zuvor definierten Typs oder geschachtelten Typs identisch ist. Um Duplikate zu sein, müssen die vollständigen Namen identisch sein, einschließlich des Namespaces und aller Schachtelungstypen.

Gilt für:

DefineNestedType(String, TypeAttributes, Type, Int32)

Quelle:
TypeBuilder.cs
Quelle:
TypeBuilder.cs
Quelle:
TypeBuilder.cs

Definiert einen geschachtelten Typ bei gegebenem Namen, Attributen, Gesamtgröße des Typs und erweitertem Typ.

public:
 System::Reflection::Emit::TypeBuilder ^ DefineNestedType(System::String ^ name, System::Reflection::TypeAttributes attr, Type ^ parent, int typeSize);
public System.Reflection.Emit.TypeBuilder DefineNestedType (string name, System.Reflection.TypeAttributes attr, Type? parent, int typeSize);
public System.Reflection.Emit.TypeBuilder DefineNestedType (string name, System.Reflection.TypeAttributes attr, Type parent, int typeSize);
member this.DefineNestedType : string * System.Reflection.TypeAttributes * Type * int -> System.Reflection.Emit.TypeBuilder
Public Function DefineNestedType (name As String, attr As TypeAttributes, parent As Type, typeSize As Integer) As TypeBuilder

Parameter

name
String

Der Kurzname des Typs. name darf keine eingebetteten NULL-Werte enthalten.

attr
TypeAttributes

Die Attribute des Typs.

parent
Type

Der Typ, den der geschachtelte Typ erweitert.

typeSize
Int32

Die Gesamtgröße des Typs.

Gibt zurück

Der definierte geschachtelte Typ.

Ausnahmen

Das geschachtelte Attribut ist nicht angegeben.

- oder -

Dieser Typ ist versiegelt.

- oder -

Dieser Typ ist ein Array.

- oder -

Dieser Typ ist eine Schnittstelle, aber der geschachtelte Typ ist keine Schnittstelle.

- oder -

Die Länge von name ist 0 (null) oder größer als 1023.

- oder -

Dieser Vorgang würde einen Typ mit einem bereits vorhandenen FullName in der aktuellen Assembly erstellen.

name ist null.

Hinweise

Diese Methode kann verwendet werden, um geschachtelte Typen zu erstellen, auch wenn die CreateType Methode für den einschließenden Typ aufgerufen wurde.

Der geschachtelte Typ muss vollständig sein, bevor Sie ihn mithilfe von GetMembers, GetNestedTypeoder GetNestedTypesreflektieren können.

Die Reihenfolge, in der geschachtelte Typen und Schachtelungstypen abgeschlossen werden sollen, finden Sie in der Beschreibung von CreateType .

Ein doppelter Name wird nicht notwendigerweise erstellt, wenn name er mit dem Namen eines zuvor definierten Typs oder geschachtelten Typs identisch ist. Um Duplikate zu sein, müssen die vollständigen Namen identisch sein, einschließlich des Namespaces und aller Schachtelungstypen.

Gilt für: