Udostępnij za pośrednictwem


CodeDomProvider.GenerateCodeFromExpression Metoda

Definicja

Generuje kod dla określonego wyrażenia Code Document Object Model (CodeDOM) i wysyła go do określonego składnika zapisywania tekstu przy użyciu określonych opcji.

public:
 virtual void GenerateCodeFromExpression(System::CodeDom::CodeExpression ^ expression, System::IO::TextWriter ^ writer, System::CodeDom::Compiler::CodeGeneratorOptions ^ options);
public virtual void GenerateCodeFromExpression (System.CodeDom.CodeExpression expression, System.IO.TextWriter writer, System.CodeDom.Compiler.CodeGeneratorOptions options);
abstract member GenerateCodeFromExpression : System.CodeDom.CodeExpression * System.IO.TextWriter * System.CodeDom.Compiler.CodeGeneratorOptions -> unit
override this.GenerateCodeFromExpression : System.CodeDom.CodeExpression * System.IO.TextWriter * System.CodeDom.Compiler.CodeGeneratorOptions -> unit
Public Overridable Sub GenerateCodeFromExpression (expression As CodeExpression, writer As TextWriter, options As CodeGeneratorOptions)

Parametry

expression
CodeExpression

CodeExpression Obiekt wskazujący wyrażenie, dla którego ma być generowany kod.

writer
TextWriter

Do TextWriter którego jest wysyłany kod wyjściowy.

options
CodeGeneratorOptions

Element CodeGeneratorOptions wskazujący opcje do użycia do generowania kodu.

Wyjątki

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

Uwagi

Uwaga

W .NET Framework wersji 1.0 i 1.1 ta metoda jest dostarczana przez ICodeGenerator implementację zwracaną przez CreateGenerator metodę dostawcy. W wersji 2.0 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 ICodeGenerator jest wywoływana przez klasę bazową.

Uwagi 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 CreateGenerator() metody w celu zachowania zgodności z wcześniej 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 NotImplementedException metodę klasy bazowej.

Dotyczy

Zobacz też