Sdílet prostřednictvím


CodeDomProvider.CompileAssemblyFromDom Metoda

Definice

Zkompiluje sestavení na System.CodeDom základě stromů obsažených CodeCompileUnit v zadaném poli objektů pomocí zadaného nastavení kompilátoru.

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

Parametry

options
CompilerParameters

Objekt CompilerParameters , který označuje nastavení kompilace.

compilationUnits
CodeCompileUnit[]

Pole typu CodeCompileUnit označující kód, který se má zkompilovat.

Návraty

Objekt CompilerResults , který označuje výsledky kompilace.

Výjimky

Tato metoda ani CreateCompiler() metoda není přepsána v odvozené třídě.

Pouze .NET Core a .NET 5+: Ve všech případech.

Poznámky

Poznámka

V rozhraní .NET Framework verze 1.0 a 1.1 je tato metoda poskytována ICodeCompiler implementací, která je vrácena metodou CreateCompiler zprostředkovatele. Ve verzi 2.0 lze tuto metodu volat přímo na zprostředkovatele kódu, i když není přepsána zprostředkovatelem kódu. Pokud zprostředkovatel kódu nepřepíše tuto metodu ICodeCompiler , je implementace volána základní třídou.

Poznámka

V .NET Core a .NET 5+ volání CodeDomProvider.CompileAssemblyFromDom metody vyvolají PlatformNotSupportedException. Kompilace kódu není podporována.

Poznámky pro dědice

Pokud přepíšete tuto metodu, nesmíte volat odpovídající metodu základní třídy. Metoda základní třídy vytvoří generátor v odvozené třídě pomocí zastaralé CreateCompiler() metody pro kompatibilitu s existujícími zprostředkovateli, kteří používají kompilátory kódu. Metoda základní třídy pak volá ekvivalentní metodu v implementaci ICodeCompiler k provedení této funkce. Získáte, NotImplementedException pokud zavoláte metodu základní třídy od zprostředkovatele kódu, který nepoužívá kompilátor kódu.

Platí pro

Viz také