Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En esta sección se describe un conjunto de tipos administrados en el System.Reflection.Emit espacio de nombres que permiten a un compilador o herramienta emitir metadatos y lenguaje intermedio común (CIL) en tiempo de ejecución y, opcionalmente, generar un archivo ejecutable portátil (PE) en el disco. Los motores de script y los compiladores son los usuarios principales de este espacio de nombres. En esta sección, la funcionalidad proporcionada por el espacio de nombres System.Reflection.Emit se conoce como emisión de reflexión.
La emisión de la reflexión permite lo siguiente:
- Defina métodos globales ligeros en tiempo de ejecución, con la DynamicMethod clase y ejecútelos mediante delegados.
- Defina ensamblajes en tiempo de ejecución y, a continuación, ejecútelos o guárdelos en disco.
- Definir ensamblados en tiempo de ejecución, ejecutarlos y, después, descargarlos y permitir la recolección de elementos no utilizados para reclamar sus recursos.
- Defina módulos en nuevos ensamblados en tiempo de ejecución y, a continuación, ejecútelos o guárdelos en el disco.
- Defina tipos en módulos en tiempo de ejecución, cree instancias de estos tipos e invoque sus métodos.
- Defina información simbólica para módulos definidos que pueden usar herramientas como depuradores y generadores de perfiles de código.
Además de los tipos administrados en el System.Reflection.Emit espacio de nombres, hay interfaces de metadatos no administradas que se describen en la documentación de referencia de interfaces de metadatos. La emisión de reflexión administrada proporciona una comprobación más estricta de los errores semánticos y un mayor nivel de abstracción de los metadatos que las interfaces de metadatos no administradas.
Otro recurso útil para trabajar con metadatos y CIL es la documentación de Common Language Infrastructure (CLI), especialmente "Partition II: Metadata Definition and Semantics" y "Partition III: CIL Instruction Set". La documentación está disponible en línea en el sitio web de Ecma.
Referencia
OpCodes
Cataloga los códigos de instrucción CIL que puede usar para compilar cuerpos de método.
System.Reflection.Emit
Contiene clases administradas que se usan para emitir métodos dinámicos, ensamblados y tipos.
Type
Describe la clase Type, que representa los tipos en reflexión administrada y emisión de la reflexión, y que es clave para el uso de estas tecnologías.
System.Reflection
Contiene clases administradas que se usan para explorar metadatos y código administrado.