CodeDomProvider.CompileAssemblyFromDom Método

Definição

Compila um assembly com base nas System.CodeDom árvores contidas na matriz CodeCompileUnit de objetos especificada, usando as configurações do compilador especificadas.

public:
 virtual System::CodeDom::Compiler::CompilerResults ^ CompileAssemblyFromDom(System::CodeDom::Compiler::CompilerParameters ^ options, ... cli::array <System::CodeDom::CodeCompileUnit ^> ^ compilationUnits);
public virtual System.CodeDom.Compiler.CompilerResults CompileAssemblyFromDom(System.CodeDom.Compiler.CompilerParameters options, params System.CodeDom.CodeCompileUnit[] compilationUnits);
abstract member CompileAssemblyFromDom : System.CodeDom.Compiler.CompilerParameters * System.CodeDom.CodeCompileUnit[] -> System.CodeDom.Compiler.CompilerResults
override this.CompileAssemblyFromDom : System.CodeDom.Compiler.CompilerParameters * System.CodeDom.CodeCompileUnit[] -> System.CodeDom.Compiler.CompilerResults
Public Overridable Function CompileAssemblyFromDom (options As CompilerParameters, ParamArray compilationUnits As CodeCompileUnit()) As CompilerResults

Parâmetros

options
CompilerParameters

Um CompilerParameters objeto que indica as configurações da compilação.

compilationUnits
CodeCompileUnit[]

Uma matriz de tipo CodeCompileUnit que indica o código a ser compilado.

Retornos

Um CompilerResults objeto que indica os resultados da compilação.

Exceções

Nem esse método nem o CreateCompiler() método são substituídos em uma classe derivada.

Somente .NET Core e .NET 5+: em todos os casos.

Comentários

Importante

Em .NET Core e .NET 5+, chamadas para o método CodeDomProvider.CompileAssemblyFromDom lançam um PlatformNotSupportedException. Não há suporte para compilar código.

Note

No .NET Framework 2.0 e versões posteriores, esse método pode ser chamado diretamente no provedor de código, mesmo que não seja substituído pelo provedor de código. Se o provedor de código não substituir esse método, a ICodeCompiler implementação será chamada pela classe base.

Notas aos Herdeiros

Se você substituir esse método, não deverá chamar o método correspondente da classe base. O método de classe base cria um gerador na classe derivada usando o método obsoleto CreateCompiler() para compatibilidade com provedores preexistentes que usam compiladores de código. Em seguida, o método de classe base chama o método equivalente na ICodeCompiler implementação para executar essa função. Você receberá um NotImplementedException se chamar o método de classe base de um provedor de código que não usa um compilador de código.

Aplica-se a

Confira também