CodeDomProvider.GenerateCodeFromExpression Method


Generates code for the specified Code Document Object Model (CodeDOM) expression and sends it to the specified text writer, using the specified options.

 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)



A CodeExpression object that indicates the expression for which to generate code.


The TextWriter to which output code is sent.


A CodeGeneratorOptions that indicates the options to use for generating code.


Neither this method nor the CreateGenerator() method is overridden in a derived class.



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. In version 2.0, this method can be called directly on the code provider even if it is not overridden by the code provider. If the code provider does not override this method, the ICodeGenerator implementation is called by the base class.

Notes to Inheritors

If you override this method, you must not call the corresponding method of the base class. 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. The base-class method then calls the equivalent method in the ICodeGenerator implementation to perform this function. You will get a NotImplementedException if you call the base-class method from a code provider that does not use a code generator.

Applies to

See also