Compartilhar via


Abstrações de emissão de reflexão

O reflexo emit abstrações correspondem diretamente para o common type system que dá suporte a common language runtime.

Um assembly é um conjunto configurado de módulos de código carregável e outros recursos que juntos implementam uma unidade de funcionalidade. Assemblies têm nomes que formam a base da hierarquia de nomeação do common type system.

Este tópico classifica os assemblies como estático ou dinâmico. Um assembly estático é um assembly carregado a partir do disco. Um assembly dinâmico é um assembly que é criado usando a reflexão emite. A tabela a seguir mostra as abstrações usadas pelo reflexo emitem em ordem alfabética.

Abstração

Descrição

AssemblyBuilder

Uma classe que define e representa um assembly dinâmico. Herda o Assembly classe.

ConstructorBuilder

Uma classe que define e representa um construtor, que descreve uma operação que cria uma instância de um tipo. Herda o ConstructorInfo classe.

CustomAttributeBuilder

Uma classe que ajuda a definir os atributos personalizados.

DynamicMethod

Uma classe que define um método global que pode ser executado usando um delegado.

EnumBuilder

Uma classe que ajuda a define e representa um tipo de enumeração. Herda o Type classe.

EventBuilder

Uma classe que é usada para definir e representam um evento. Herda o EventInfo classe. Eventos de um tipo de objeto especificam transições de estado nomeado, os assinantes podem registrar ou cancelar o registro de interesse usando os métodos do acessador.

FieldBuilder

Uma classe que é usada para definir e representam um campo. Herda o FieldInfo classe. Um campo é uma subdivisão nomeada de um valor. Um tipo pode ter membros de campo. Um módulo ou um tipo também pode consultar os campos definidos na seção de .sdata de um arquivo executável portátil (PE).

ILGenerator

Uma classe que é usada para definir e representam a Microsoft intermediate language (MSIL). O compilador do runtime just-in-time (JIT) converte instruções MSIL para código nativo.

Label

A classe, isto é, uma representação opaca de um rótulo usado pelo ILGenerator classe. Rótulos correspondem a locais específicos no código MSIL.

LocalBuilder

Uma classe que representa uma variável local declarada dentro do corpo de um método.

MethodBuilder

Uma classe que é usada para definir e representar um método. Herda o MethodInfo classe. Um método descreve uma operação que pode ser executada em valores de um tipo.

ModuleBuilder

Uma classe que é usada para definir e representam um módulo. Herda o Module classe.

Um módulo é uma unidade de compilação ou em uma unidade de desenvolvimento. API de emitir um módulo criado usando a reflexão é chamado de módulo dinâmico para a duração da execução no qual o módulo foi criado. O módulo dinâmico do termo não se aplica se o módulo é salvo no disco e, em seguida, é carregado do disco. Os módulos dinâmicos que podem ser salvas em disco como um arquivo PE são chamados persistente módulos dinâmicos. Os módulos dinâmicos que existe apenas na memória são chamados transitórios módulos dinâmicos.

ParameterBuilder

Uma classe que é usada para definir e representam um parâmetro. Herda o ParameterInfo classe. Parâmetros são locais que representam os argumentos de métodos ou de construtores.

PropertyBuilder

Uma classe que é usada para definir e representar uma propriedade. Herda o PropertyInfo classe. Propriedades de um tipo de objeto especificam valores nomeados que podem ser acessadas usando os métodos de acesso que ler e gravar o valor.

TypeBuilder

Uma classe que é usada para definir e representam um tipo. Herda o tipo de classe. Tipos descrevem os valores. O tipo define os valores permitidos e operações permitidas suportadas pelos valores do tipo. Tipos podem ter membros que são tipos, métodos, campos, propriedades ou eventos.

Consulte também

Conceitos

Assemblies no Common Language Runtime

Outros recursos

Emitindo Métodos Dinâmicos e Assemblies