Compartir a través de


Abstracciones de Reflection Emit

Actualización: noviembre 2007

Las abstracciones de emisión de la reflexión guardan una estrecha correspondencia con el sistema de tipos comunes subyacente de Common Language Runtime.

Un ensamblado es un conjunto configurado de módulos de código cargable y otros recursos que, combinados, implementan una unidad de funcionalidad. Los ensamblados tienen nombres que constituyen la base de la jerarquía de nomenclatura del sistema de tipos comunes.

En este tema, los ensamblados se clasifican como estáticos o dinámicos. Un ensamblado estático es aquél que se carga desde el disco. Un ensamblado dinámico es aquél que se crea mediante emisiones de la reflexión. En la tabla siguiente, se muestran las abstracciones que utiliza la emisión de la reflexión por orden alfabético.

Abstracción

Descripción

AssemblyBuilder

Clase que define y representa un ensamblado dinámico. Hereda de la clase Assembly.

ConstructorBuilder

Clase que define y representa un constructor, que describe una operación que crea una instancia de un tipo. Hereda de la clase ConstructorInfo.

CustomAttributeBuilder

Clase que ayuda a definir atributos personalizados.

DynamicMethod

Clase que define un método global que se puede ejecutar mediante un delegado.

EnumBuilder

Clase que ayuda a definir y representar un tipo de enumeración. Hereda de la clase Type.

EventBuilder

Clase que se utiliza para definir y representar un evento. Hereda de la clase EventInfo. Los eventos de un tipo de objeto especifican las transiciones de estado con nombre en las que los suscriptores pueden registrar o anular el registro de interés mediante métodos de descriptor de acceso.

FieldBuilder

Clase que se utiliza para definir y representar un campo. Hereda de la clase FieldInfo. Un campo es una subdivisión con nombre de un valor. Un tipo puede tener miembros de campo. Un módulo o un tipo también puede hacer referencia a los campos definidos en la sección .sdata de un archivo ejecutable portable (PE).

ILGenerator

Clase que se utiliza para definir y representar lenguaje intermedio de Microsoft (MSIL). El compilador Just-In-Time (JIT) del motor en tiempo de ejecución convierte MSIL en código nativo.

Label

Clase que constituye una representación opaca de una etiqueta que utiliza la clase ILGenerator. Las etiquetas se corresponden con ubicaciones específicas del código MSIL.

LocalBuilder

Clase que representa una variable local declarada en el cuerpo de un método.

MethodBuilder

Clase que se utiliza para definir y representar un método. Hereda de la clase MethodInfo. Un método describe una operación que se puede realizar con los valores de un tipo.

ModuleBuilder

Clase que se utiliza para definir y representar un módulo. Hereda de la clase Module.

Un módulo es una unidad de compilación o una unidad de desarrollo. Un módulo creado mediante la API de la emisión de la reflexión se denomina módulo dinámico mientras dure el proceso en el que se creó el módulo. El término módulo dinámico no es aplicable si el módulo se guarda en el disco y después se carga desde éste. Los módulos dinámicos que se pueden guardar en el disco como archivos PE se denominan módulos dinámicos con persistencia. Los módulos dinámicos que sólo existen en la memoria se denominan módulos dinámicos transitorios.

ParameterBuilder

Clase que se utiliza para definir y representar un parámetro. Hereda de la clase ParameterInfo. Los parámetros son ubicaciones que representan argumentos de métodos o constructores.

PropertyBuilder

Clase que se utiliza para definir y representar una propiedad. Hereda de la clase PropertyInfo. Las propiedades de un tipo de objeto especifican valores con nombre a los que se obtiene acceso a través de métodos de descriptor de acceso que leen y escriben el valor.

TypeBuilder

Clase que se utiliza para definir y representar un tipo. Se hereda de la clase Type. Los tipos describen valores. El tipo define los valores permitidos y las operaciones permitidas que son compatibles con los valores del tipo. Los tipos pueden tener miembros que sean tipos, métodos, campos, propiedades o eventos.

Vea también

Otros recursos

Emitir métodos y ensamblados dinámicos

Ensamblados en Common Language Runtime