TypeBuilder.DefineNestedType Método

Definición

Define un tipo anidado.

Sobrecargas

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

Define un tipo anidado, dados su nombre, sus atributos, el tipo que extiende y las interfaces que implementa.

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

Define un tipo anidado, dado su nombre, atributos, tamaño y el tipo que extiende.

DefineNestedType(String, TypeAttributes, Type, PackingSize)

Define un tipo anidado, dado su nombre, sus atributos, el tipo que extiende y el tamaño de empaquetado.

DefineNestedType(String)

Define un tipo anidado, dado su nombre.

DefineNestedType(String, TypeAttributes, Type)

Define un tipo anidado, dado su nombre, sus atributos y el tipo que extiende.

DefineNestedType(String, TypeAttributes)

Define un tipo anidado, dado su nombre y atributos.

DefineNestedType(String, TypeAttributes, Type, Int32)

Define un tipo anidado, dados su nombre, sus atributos, el tamaño total del tipo y el tipo que extiende.

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

Define un tipo anidado, dados su nombre, sus atributos, el tipo que extiende y las interfaces que implementa.

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

Parámetros

name
String

Nombre corto del tipo. name no puede contener valores null insertados.

attr
TypeAttributes

Atributos del tipo.

parent
Type

El tipo que extiende el tipo anidado.

interfaces
Type[]

Las interfaces que implementa el tipo anidado.

Devoluciones

El tipo anidado definido.

Atributos

Excepciones

No se especificó el atributo anidado.

o bien

Este tipo está sellado.

o bien

Este tipo es una matriz.

o bien

Este tipo es una interfaz, pero el tipo anidado no es una interfaz.

o bien

La longitud de name es cero o mayor que 1023.

o bien

Esta operación crearía un tipo con un valor de FullName duplicado en el ensamblado actual.

name es null.

o bien

Un elemento de la matriz interfaces es null.

Comentarios

Este método se puede usar para crear tipos anidados incluso después de llamar al CreateType método en el tipo envolvente.

El tipo anidado debe completarse para poder reflejarlo mediante GetMembers, GetNestedTypeo GetNestedTypes.

Consulte la descripción del CreateType orden en el que deben completarse los tipos anidados y los tipos de anidamiento.

Un nombre duplicado no se crea necesariamente si name es idéntico al nombre de un tipo definido previamente o un tipo anidado. Para ser duplicados, los nombres completos deben ser los mismos, incluido el espacio de nombres y todos los tipos de anidamiento.

Se aplica a

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

Define un tipo anidado, dado su nombre, atributos, tamaño y el tipo que extiende.

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

Parámetros

name
String

Nombre corto del tipo. name no puede contener valores null insertados.

attr
TypeAttributes

Atributos del tipo.

parent
Type

El tipo que extiende el tipo anidado.

packSize
PackingSize

Tamaño de empaquetado del tipo.

typeSize
Int32

Tamaño total del tipo.

Devoluciones

El tipo anidado definido.

Se aplica a

DefineNestedType(String, TypeAttributes, Type, PackingSize)

Define un tipo anidado, dado su nombre, sus atributos, el tipo que extiende y el tamaño de empaquetado.

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

Parámetros

name
String

Nombre corto del tipo. name no puede contener valores null insertados.

attr
TypeAttributes

Atributos del tipo.

parent
Type

El tipo que extiende el tipo anidado.

packSize
PackingSize

Tamaño de empaquetado del tipo.

Devoluciones

El tipo anidado definido.

Excepciones

No se especificó el atributo anidado.

o bien

Este tipo está sellado.

o bien

Este tipo es una matriz.

o bien

Este tipo es una interfaz, pero el tipo anidado no es una interfaz.

o bien

La longitud de name es cero o mayor que 1023.

o bien

Esta operación crearía un tipo con un valor de FullName duplicado en el ensamblado actual.

name es null.

Comentarios

Este método se puede usar para crear tipos anidados incluso después de llamar al CreateType método en el tipo envolvente.

El tipo anidado debe completarse para poder reflejarlo mediante GetMembers, GetNestedTypeo GetNestedTypes.

Consulte la descripción del CreateType orden en el que deben completarse los tipos anidados y los tipos de anidamiento.

Un nombre duplicado no se crea necesariamente si name es idéntico al nombre de un tipo definido previamente o un tipo anidado. Para ser duplicados, los nombres completos deben ser los mismos, incluido el espacio de nombres y todos los tipos de anidamiento.

Se aplica a

DefineNestedType(String)

Define un tipo anidado, dado su nombre.

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

Parámetros

name
String

Nombre corto del tipo. name no puede contener valores null insertados.

Devoluciones

El tipo anidado definido.

Excepciones

La longitud de name es cero o mayor que 1023.

o bien

Esta operación crearía un tipo con un valor de FullName duplicado en el ensamblado actual.

name es null.

Comentarios

Este método se puede usar para crear tipos anidados incluso después de llamar al CreateType método en el tipo envolvente.

El tipo anidado debe completarse para poder reflejarlo mediante GetMembers, GetNestedTypeo GetNestedTypes.

Consulte la descripción del CreateType orden en el que deben completarse los tipos anidados y los tipos de anidamiento.

Un nombre duplicado no se crea necesariamente si name es idéntico al nombre de un tipo definido previamente o un tipo anidado. Para ser duplicados, los nombres completos deben ser los mismos, incluido el espacio de nombres y todos los tipos de anidamiento.

Se aplica a

DefineNestedType(String, TypeAttributes, Type)

Define un tipo anidado, dado su nombre, sus atributos y el tipo que extiende.

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

Parámetros

name
String

Nombre corto del tipo. name no puede contener valores null insertados.

attr
TypeAttributes

Atributos del tipo.

parent
Type

El tipo que extiende el tipo anidado.

Devoluciones

El tipo anidado definido.

Excepciones

No se especificó el atributo anidado.

o bien

Este tipo está sellado.

o bien

Este tipo es una matriz.

o bien

Este tipo es una interfaz, pero el tipo anidado no es una interfaz.

o bien

La longitud de name es cero o mayor que 1023.

o bien

Esta operación crearía un tipo con un valor de FullName duplicado en el ensamblado actual.

name es null.

Comentarios

Este método se puede usar para crear tipos anidados incluso después de llamar al CreateType método en el tipo envolvente.

El tipo anidado debe completarse para poder reflejarlo mediante GetMembers, GetNestedTypeo GetNestedTypes.

Consulte la descripción del CreateType orden en el que deben completarse los tipos anidados y los tipos de anidamiento.

Un nombre duplicado no se crea necesariamente si name es idéntico al nombre de un tipo definido previamente o un tipo anidado. Para ser duplicados, los nombres completos deben ser los mismos, incluido el espacio de nombres y todos los tipos de anidamiento.

Se aplica a

DefineNestedType(String, TypeAttributes)

Define un tipo anidado, dado su nombre y atributos.

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

Parámetros

name
String

Nombre corto del tipo. name no puede contener valores null insertados.

attr
TypeAttributes

Atributos del tipo.

Devoluciones

El tipo anidado definido.

Excepciones

No se especificó el atributo anidado.

o bien

Este tipo está sellado.

o bien

Este tipo es una matriz.

o bien

Este tipo es una interfaz, pero el tipo anidado no es una interfaz.

o bien

La longitud de name es cero o mayor que 1023.

o bien

Esta operación crearía un tipo con un valor de FullName duplicado en el ensamblado actual.

name es null.

Comentarios

Este método se puede usar para crear tipos anidados incluso después de llamar al CreateType método en el tipo envolvente.

El tipo anidado debe completarse para poder reflejarlo mediante GetMembers, GetNestedTypeo GetNestedTypes.

Consulte la descripción del CreateType orden en el que deben completarse los tipos anidados y los tipos de anidamiento.

Un nombre duplicado no se crea necesariamente si name es idéntico al nombre de un tipo definido previamente o un tipo anidado. Para ser duplicados, los nombres completos deben ser los mismos, incluido el espacio de nombres y todos los tipos de anidamiento.

Se aplica a

DefineNestedType(String, TypeAttributes, Type, Int32)

Define un tipo anidado, dados su nombre, sus atributos, el tamaño total del tipo y el tipo que extiende.

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

Parámetros

name
String

Nombre corto del tipo. name no puede contener valores null insertados.

attr
TypeAttributes

Atributos del tipo.

parent
Type

El tipo que extiende el tipo anidado.

typeSize
Int32

Tamaño total del tipo.

Devoluciones

El tipo anidado definido.

Excepciones

No se especificó el atributo anidado.

o bien

Este tipo está sellado.

o bien

Este tipo es una matriz.

o bien

Este tipo es una interfaz, pero el tipo anidado no es una interfaz.

o bien

La longitud de name es cero o mayor que 1023.

o bien

Esta operación crearía un tipo con un valor de FullName duplicado en el ensamblado actual.

name es null.

Comentarios

Este método se puede usar para crear tipos anidados incluso después de llamar al CreateType método en el tipo envolvente.

El tipo anidado debe completarse para poder reflejarlo mediante GetMembers, GetNestedTypeo GetNestedTypes.

Consulte la descripción del CreateType orden en el que deben completarse los tipos anidados y los tipos de anidamiento.

Un nombre duplicado no se crea necesariamente si name es idéntico al nombre de un tipo definido previamente o un tipo anidado. Para ser duplicados, los nombres completos deben ser los mismos, incluido el espacio de nombres y todos los tipos de anidamiento.

Se aplica a