Definindo um Enum com reflexão emitir
Enumerações ou enumerações, são definidas no escopo de um módulo dinâmico usando o ModuleBuilder.DefineEnum método. DefineEnum retorna um EnumBuilder.
Um campo de enumeração é definido usando o EnumBuilder.DefineLiteral o método, como demonstrado pelo exemplo de código para o método.
Antes da enumeração é usada, o EnumBuilder.CreateType método deve ser chamado. CreateType conclui a criação da enumeração.
Observação
No.NET Framework versões 1.0 e 1.1, é necessário definir enumerações usando TypeBuilder porque EnumBuilder emite enumerações cujos elementos são do tipo Int32 em vez do tipo de enumeração.No.NET Framework versão 2.0, EnumBuilder emite enumerações cujos elementos têm o tipo correto.