CodeEntryPointMethod Class

Represents the entry point method of an executable.

Namespace:  System.CodeDom
Assembly:  System (in System.dll)

[SerializableAttribute]
[ComVisibleAttribute(true)]
[ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)]
public class CodeEntryPointMethod : CodeMemberMethod

The CodeEntryPointMethod type exposes the following members.

  NameDescription
Public methodCodeEntryPointMethodInitializes a new instance of the CodeEntryPointMethod class.
Top

  NameDescription
Public propertyAttributesGets or sets the attributes of the member. (Inherited from CodeTypeMember.)
Public propertyCommentsGets the collection of comments for the type member. (Inherited from CodeTypeMember.)
Public propertyCustomAttributesGets or sets the custom attributes of the member. (Inherited from CodeTypeMember.)
Public propertyEndDirectivesGets the end directives for the member. (Inherited from CodeTypeMember.)
Public propertyImplementationTypesGets the data types of the interfaces implemented by this method, unless it is a private method implementation, which is indicated by the PrivateImplementationType property. (Inherited from CodeMemberMethod.)
Public propertyLinePragmaGets or sets the line on which the type member statement occurs. (Inherited from CodeTypeMember.)
Public propertyNameGets or sets the name of the member. (Inherited from CodeTypeMember.)
Public propertyParametersGets the parameter declarations for the method. (Inherited from CodeMemberMethod.)
Public propertyPrivateImplementationTypeGets or sets the data type of the interface this method, if private, implements a method of, if any. (Inherited from CodeMemberMethod.)
Public propertyReturnTypeGets or sets the data type of the return value of the method. (Inherited from CodeMemberMethod.)
Public propertyReturnTypeCustomAttributesGets the custom attributes of the return type of the method. (Inherited from CodeMemberMethod.)
Public propertyStartDirectivesGets the start directives for the member. (Inherited from CodeTypeMember.)
Public propertyStatementsGets the statements within the method. (Inherited from CodeMemberMethod.)
Public propertyTypeParametersGets the type parameters for the current generic method. (Inherited from CodeMemberMethod.)
Public propertyUserDataGets the user-definable data for the current object. (Inherited from CodeObject.)
Top

  NameDescription
Public methodEquals(Object)Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as the default hash function. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Top

  NameDescription
Public eventPopulateImplementationTypesAn event that will be raised the first time the ImplementationTypes collection is accessed. (Inherited from CodeMemberMethod.)
Public eventPopulateParametersAn event that will be raised the first time the Parameters collection is accessed. (Inherited from CodeMemberMethod.)
Public eventPopulateStatementsAn event that will be raised the first time the Statements collection is accessed. (Inherited from CodeMemberMethod.)
Top

A CodeEntryPointMethod is a CodeMemberMethod that represents the entry point method of an executable.

This example demonstrates using a CodeEntryPointMethod to indicate the method to start program execution at.

// Builds a Hello World Program Graph using System.CodeDom objects 
public static CodeCompileUnit BuildHelloWorldGraph()
{            
    // Create a new CodeCompileUnit to contain the program graph
    CodeCompileUnit CompileUnit = new CodeCompileUnit();

    // Declare a new namespace object and name it
    CodeNamespace Samples = new CodeNamespace("Samples");
    // Add the namespace object to the compile unit
    CompileUnit.Namespaces.Add( Samples );

    // Add a new namespace import for the System namespace
    Samples.Imports.Add( new CodeNamespaceImport("System") );            

    // Declare a new type object and name it
    CodeTypeDeclaration Class1 = new CodeTypeDeclaration("Class1");
    // Add the new type to the namespace object's type collection
    Samples.Types.Add(Class1);            

    // Declare a new code entry point method
    CodeEntryPointMethod Start = new CodeEntryPointMethod();
    // Create a new method invoke expression
    CodeMethodInvokeExpression cs1 = new CodeMethodInvokeExpression( 
        // Call the System.Console.WriteLine method 
        new CodeTypeReferenceExpression("System.Console"), "WriteLine", 
        // Pass a primitive string parameter to the WriteLine method 
        new CodePrimitiveExpression("Hello World!") );
    // Add the new method code statement
    Start.Statements.Add(new CodeExpressionStatement(cs1));        

    // Add the code entry point method to the type's members collection
    Class1.Members.Add( Start );

    return CompileUnit;

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft