共用方式為


CodeDomProvider.CompileAssemblyFromDom 方法

定義

使用指定的編譯器設定,根據 System.CodeDom 物件之指定陣列所包含的 CodeCompileUnit 樹狀結構,編譯一個組件。

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

參數

options
CompilerParameters

CompilerParameters 物件,指示編譯的設定值。

compilationUnits
CodeCompileUnit[]

CodeCompileUnit 型別的陣列,表示要編譯的程式碼。

傳回

CompilerResults 物件,指示編譯的結果。

例外狀況

此方法或 CreateCompiler() 方法都沒有在衍生類別中覆寫。

僅限 .NET Core 與 .NET 5+:在所有情況下。

備註

注意

在 .NET Framework 1.0 和 1.1 版中,這個方法是由ICodeCompiler提供者的 方法所CreateCompiler傳回的 實作所提供。 在 2.0 版中,即使程式代碼提供者未覆寫此方法,也可以直接在程式代碼提供者上呼叫此方法。 如果程式代碼提供者未覆寫這個方法, ICodeCompiler 基類會呼叫 實作。

注意

在 .NET Core 和 .NET 5+ 上,呼叫 CodeDomProvider.CompileAssemblyFromDom 方法會擲回 PlatformNotSupportedException。 不支援編譯程序代碼。

給繼承者的注意事項

如果您覆寫這個方法,則不得呼叫基類的對應方法。 基類方法會使用過時 CreateCompiler() 的方法,在衍生類別中建立產生器,以便與使用程式代碼編譯程式的預先存在提供者相容。 基類方法接著會呼叫 實作中的 ICodeCompiler 對等方法,以執行此函式。 如果您從不使用程式代碼編譯程式的程式代碼提供者呼叫基類方法,就會取得 NotImplementedException

適用於

另請參閱