CodeDomProvider.GenerateCodeFromStatement 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.
Generuje kod dla określonej instrukcji Code Document Object Model (CodeDOM) i wysyła go do określonego modułu zapisywania tekstu przy użyciu określonych opcji.
public:
virtual void GenerateCodeFromStatement(System::CodeDom::CodeStatement ^ statement, System::IO::TextWriter ^ writer, System::CodeDom::Compiler::CodeGeneratorOptions ^ options);
public virtual void GenerateCodeFromStatement (System.CodeDom.CodeStatement statement, System.IO.TextWriter writer, System.CodeDom.Compiler.CodeGeneratorOptions options);
abstract member GenerateCodeFromStatement : System.CodeDom.CodeStatement * System.IO.TextWriter * System.CodeDom.Compiler.CodeGeneratorOptions -> unit
override this.GenerateCodeFromStatement : System.CodeDom.CodeStatement * System.IO.TextWriter * System.CodeDom.Compiler.CodeGeneratorOptions -> unit
Public Overridable Sub GenerateCodeFromStatement (statement As CodeStatement, writer As TextWriter, options As CodeGeneratorOptions)
Parametry
- statement
- CodeStatement
Element CodeStatement codeDOM zawierający elementy CodeDOM, dla których ma być generowany kod.
- writer
- TextWriter
Do TextWriter którego jest wysyłany kod wyjściowy.
- options
- CodeGeneratorOptions
Element CodeGeneratorOptions wskazujący opcje, które mają być używane do generowania kodu.
Wyjątki
Ta metoda ani metoda nie CreateGenerator() jest zastępowana w klasie pochodnej.
Uwagi
Uwaga
W .NET Framework wersji 1.0 i 1.1 ta metoda jest dostarczana przez ICodeGenerator implementację zwróconą przez CreateGenerator metodę dostawcy. W wersji 2.0 ta metoda może być wywoływana bezpośrednio u dostawcy kodu, nawet jeśli nie jest zastępowana przez dostawcę kodu. Jeśli dostawca kodu nie zastąpi tej metody, implementacja jest wywoływana ICodeGenerator przez klasę bazową.
Uwagi dotyczące dziedziczenia
Jeśli zastąpisz tę metodę, nie możesz wywołać odpowiedniej metody klasy bazowej. Metoda klasy bazowej tworzy generator w klasie pochodnej przy użyciu przestarzałej CreateGenerator() metody w celu zapewnienia zgodności ze wstępnie istniejących dostawców korzystających z generatorów kodu. Następnie metoda klasy bazowej wywołuje równoważną metodę w implementacji ICodeGenerator , aby wykonać tę funkcję. Jeśli wywołasz metodę klasy bazowej od dostawcy kodu, który nie używa generatora kodu, otrzymasz metodę NotImplementedException klasy bazowej.