CodeDomProvider.GenerateCodeFromStatement(CodeStatement, TextWriter, CodeGeneratorOptions) Metoda

Definicja

Generuje kod dla określonej instrukcji Code Document Object Model (CodeDOM) i wysyła ją do określonego składnika zapisywania tekstu przy użyciu określonych opcji.Generates code for the specified Code Document Object Model (CodeDOM) statement and sends it to the specified text writer, using the specified options.

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

CodeStatementZawierający elementy CodeDOM, dla których ma zostać wygenerowany kod.A CodeStatement containing the CodeDOM elements for which to generate code.

writer
TextWriter

TextWriterDo którego zostanie wysłany kod wyjściowy.The TextWriter to which output code is sent.

options
CodeGeneratorOptions

CodeGeneratorOptions, Który wskazuje opcje, które mają być używane do generowania kodu.A CodeGeneratorOptions that indicates the options to use for generating code.

Wyjątki

Żadna z tych metod ani CreateGenerator() Metoda nie została przesłonięta w klasie pochodnej.Neither this method nor the CreateGenerator() method is overridden in a derived class.

Uwagi

Uwaga

W .NET Framework wersje 1,0 i 1,1 Ta metoda jest zapewniana przez ICodeGenerator implementację, która jest zwracana przez CreateGenerator metodę dostawcy.In the .NET Framework versions 1.0 and 1.1, this method is provided by the ICodeGenerator implementation that is returned by the CreateGenerator method of the provider. W wersji 2,0 tę metodę można wywołać bezpośrednio dla dostawcy kodu, nawet jeśli nie został on zastąpiony przez dostawcę kodu.In version 2.0, this method can be called directly on the code provider even if it is not overridden by the code provider. Jeśli dostawca kodu nie przesłania tej metody, ICodeGenerator implementacja jest wywoływana przez klasę bazową.If the code provider does not override this method, the ICodeGenerator implementation is called by the base class.

Uwagi dotyczące dziedziczenia

W przypadku zastąpienia tej metody nie należy wywoływać odpowiedniej metody klasy bazowej.If you override this method, you must not call the corresponding method of the base class. Metoda klasy bazowej tworzy generator w klasie pochodnej przy użyciu przestarzałej CreateGenerator() metody w celu zapewnienia zgodności z istniejącymi dostawcami, którzy używają generatorów kodu.The base-class method creates a generator in the derived class using the obsolete CreateGenerator() method for compatibility with preexisting providers that use code generators. Metoda klasy bazowej następnie wywołuje równoważną metodę w ICodeGenerator implementacji, aby wykonać tę funkcję.The base-class method then calls the equivalent method in the ICodeGenerator implementation to perform this function. Otrzymasz NotImplementedException wywołanie metody klasy bazowej od dostawcy kodu, który nie używa generatora kodu.You will get a NotImplementedException if you call the base-class method from a code provider that does not use a code generator.

Dotyczy

Zobacz też