System.CodeDom Namespace

The System.CodeDom namespace contains classes that can be used to represent the elements and structure of a source code document. The classes in this namespace can be used to model the structure of a source code document that can be output as source code in a supported language using the functionality provided by the System.CodeDom.Compiler namespace.

For more information about using the CodeDOM to represent and generate source code, see Dynamic Source Code Generation and Compilation.

For a table that lists the CodeDOM elements by type and function, see the CodeDOM Quick Reference.

Public classCodeArgumentReferenceExpressionRepresents a reference to the value of an argument passed to a method.
Public classCodeArrayCreateExpressionRepresents an expression that creates an array.
Public classCodeArrayIndexerExpressionRepresents a reference to an index of an array.
Public classCodeAssignStatementRepresents a simple assignment statement.
Public classCodeAttachEventStatementRepresents a statement that attaches an event-handler delegate to an event.
Public classCodeAttributeArgumentRepresents an argument used in a metadata attribute declaration.
Public classCodeAttributeArgumentCollectionRepresents a collection of CodeAttributeArgument objects.
Public classCodeAttributeDeclarationRepresents an attribute declaration.
Public classCodeAttributeDeclarationCollectionRepresents a collection of CodeAttributeDeclaration objects.
Public classCodeBaseReferenceExpressionRepresents a reference to the base class.
Public classCodeBinaryOperatorExpressionRepresents an expression that consists of a binary operation between two expressions.
Public classCodeCastExpressionRepresents an expression cast to a data type or interface.
Public classCodeCatchClauseRepresents a catch exception block of a try/catch statement.
Public classCodeCatchClauseCollectionRepresents a collection of CodeCatchClause objects.
Public classCodeChecksumPragmaRepresents a code checksum pragma code entity.
Public classCodeCommentRepresents a comment.
Public classCodeCommentStatementRepresents a statement consisting of a single comment.
Public classCodeCommentStatementCollectionRepresents a collection of CodeCommentStatement objects.
Public classCodeCompileUnitProvides a container for a CodeDOM program graph.
Public classCodeConditionStatementRepresents a conditional branch statement, typically represented as an if statement.
Public classCodeConstructorRepresents a declaration for an instance constructor of a type.
Public classCodeDefaultValueExpressionRepresents a reference to a default value.
Public classCodeDelegateCreateExpressionRepresents an expression that creates a delegate.
Public classCodeDelegateInvokeExpressionRepresents an expression that raises an event.
Public classCodeDirectionExpressionRepresents an expression used as a method invoke parameter along with a reference direction indicator.
Public classCodeDirectiveServes as the base class for code directive classes.
Public classCodeDirectiveCollectionRepresents a collection of CodeDirective objects.
Public classCodeEntryPointMethodRepresents the entry point method of an executable.
Public classCodeEventReferenceExpressionRepresents a reference to an event.
Public classCodeExpressionRepresents a code expression. This is a base class for other code expression objects that is never instantiated.
Public classCodeExpressionCollectionRepresents a collection of CodeExpression objects.
Public classCodeExpressionStatementRepresents a statement that consists of a single expression.
Public classCodeFieldReferenceExpressionRepresents a reference to a field.
Public classCodeGotoStatementRepresents a goto statement.
Public classCodeIndexerExpressionRepresents a reference to an indexer property of an object.
Public classCodeIterationStatementRepresents a for statement, or a loop through a block of statements, using a test expression as a condition for continuing to loop.
Public classCodeLabeledStatementRepresents a labeled statement or a stand-alone label.
Public classCodeLinePragmaRepresents a specific location within a specific file.
Public classCodeMemberEventRepresents a declaration for an event of a type.
Public classCodeMemberFieldRepresents a declaration for a field of a type.
Public classCodeMemberMethodRepresents a declaration for a method of a type.
Public classCodeMemberPropertyRepresents a declaration for a property of a type.
Public classCodeMethodInvokeExpressionRepresents an expression that invokes a method.
Public classCodeMethodReferenceExpressionRepresents a reference to a method.
Public classCodeMethodReturnStatementRepresents a return value statement.
Public classCodeNamespaceRepresents a namespace declaration.
Public classCodeNamespaceCollectionRepresents a collection of CodeNamespace objects.
Public classCodeNamespaceImportRepresents a namespace import directive that indicates a namespace to use.
Public classCodeNamespaceImportCollectionRepresents a collection of CodeNamespaceImport objects.
Public classCodeObjectProvides a common base class for most Code Document Object Model (CodeDOM) objects.
Public classCodeObjectCreateExpressionRepresents an expression that creates a new instance of a type.
Public classCodeParameterDeclarationExpressionRepresents a parameter declaration for a method, property, or constructor.
Public classCodeParameterDeclarationExpressionCollectionRepresents a collection of CodeParameterDeclarationExpression objects.
Public classCodePrimitiveExpressionRepresents a primitive data type value.
Public classCodePropertyReferenceExpressionRepresents a reference to the value of a property.
Public classCodePropertySetValueReferenceExpressionRepresents the value argument of a property set method call within a property set method.
Public classCodeRegionDirectiveSpecifies the name and mode for a code region.
Public classCodeRemoveEventStatementRepresents a statement that removes an event handler.
Public classCodeSnippetCompileUnitRepresents a literal code fragment that can be compiled.
Public classCodeSnippetExpressionRepresents a literal expression.
Public classCodeSnippetStatementRepresents a statement using a literal code fragment.
Public classCodeSnippetTypeMemberRepresents a member of a type using a literal code fragment.
Public classCodeStatementRepresents the abstract base class from which all code statements derive.
Public classCodeStatementCollectionRepresents a collection of CodeStatement objects.
Public classCodeThisReferenceExpressionRepresents a reference to the current local class instance.
Public classCodeThrowExceptionStatementRepresents a statement that throws an exception.
Public classCodeTryCatchFinallyStatementRepresents a try block with any number of catch clauses and, optionally, a finally block.
Public classCodeTypeConstructorRepresents a static constructor for a class.
Public classCodeTypeDeclarationRepresents a type declaration for a class, structure, interface, or enumeration.
Public classCodeTypeDeclarationCollectionRepresents a collection of CodeTypeDeclaration objects.
Public classCodeTypeDelegateRepresents a delegate declaration.
Public classCodeTypeMemberProvides a base class for a member of a type. Type members include fields, methods, properties, constructors and nested types.
Public classCodeTypeMemberCollectionRepresents a collection of CodeTypeMember objects.
Public classCodeTypeOfExpressionRepresents a typeof expression, an expression that returns a Type for a specified type name.
Public classCodeTypeParameterRepresents a type parameter of a generic type or method.
Public classCodeTypeParameterCollectionRepresents a collection of CodeTypeParameter objects.
Public classCodeTypeReferenceRepresents a reference to a type.
Public classCodeTypeReferenceCollectionRepresents a collection of CodeTypeReference objects.
Public classCodeTypeReferenceExpressionRepresents a reference to a data type.
Public classCodeVariableDeclarationStatementRepresents a variable declaration.
Public classCodeVariableReferenceExpressionRepresents a reference to a local variable.

Public enumerationCodeBinaryOperatorTypeDefines identifiers for supported binary operators.
Public enumerationCodeRegionModeSpecifies the start or end of a code region.
Public enumerationCodeTypeReferenceOptionsSpecifies how the code type reference is to be resolved.
Public enumerationFieldDirectionDefines identifiers used to indicate the direction of parameter and argument declarations.
Public enumerationMemberAttributesDefines member attribute identifiers for class members.