CodeDomProvider.CompileAssemblyFromSource Metoda

Definicja

Kompiluje zestaw z określonej tablicy ciągów zawierających kod źródłowy przy użyciu określonych ustawień kompilatora.

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

Parametry

options
CompilerParameters

CompilerParameters Obiekt wskazujący ustawienia kompilatora dla tej kompilacji.

sources
String[]

Tablica ciągów kodu źródłowego do skompilowania.

Zwraca

CompilerResults Obiekt wskazujący wyniki kompilacji.

Wyjątki

Ani ta metoda, ani metoda nie CreateCompiler() są zastępowane w klasie pochodnej.

Tylko platformy .NET Core i .NET 5+: we wszystkich przypadkach.

Uwagi

Ważna

W .NET Core i .NET 5 lub nowszych wywołania metody CodeDomProvider.CompileAssemblyFromSource zgłaszają PlatformNotSupportedException. Kompilowanie kodu źródłowego nie jest obsługiwane.

Note

W programie .NET Framework 2.0 i nowszych wersjach tę metodę można wywołać bezpośrednio u dostawcy kodu, nawet jeśli nie jest on zastępowany przez dostawcę kodu. Jeśli dostawca kodu nie zastąpi tej metody, implementacja ICodeCompiler jest wywoływana przez klasę bazową.

Notatki dotyczące dziedziczenia

Jeśli zastąpisz tę metodę, nie można wywołać odpowiedniej metody klasy bazowej. Metoda klasy bazowej tworzy generator w klasie pochodnej przy użyciu przestarzałej CreateCompiler() metody w celu zapewnienia zgodności z wcześniej istniejących dostawców korzystających z kompilatorów kodu. Następnie metoda klasy bazowej wywołuje równoważną metodę w implementacji ICodeCompiler , aby wykonać tę funkcję. Jeśli wywołasz metodę klasy bazowej od dostawcy kodu, który nie używa kompilatora kodu, otrzymasz NotImplementedException metodę klasy bazowej.

Dotyczy

Zobacz też