CodeDomProvider.CompileAssemblyFromSource Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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.