CodeDomProvider.GenerateCodeFromExpression 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ś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.