This documentation is archived and is not being maintained.

MethodBuilder.GetModule Method

Returns a reference to the module that contains this method.

Namespace: System.Reflection.Emit
Assembly: mscorlib (in mscorlib.dll)

'Declaration
Public Function GetModule As Module
'Usage
Dim instance As MethodBuilder
Dim returnValue As Module

returnValue = instance.GetModule
public Module GetModule ()
public function GetModule () : Module
Not applicable.

Return Value

Returns a reference to the module that contains this method.

The sample code below illustrates the usage of the GetModule method to retrieve information about a dynamically-generated module.


Dim myModBuilder As ModuleBuilder = myAsmBuilder.DefineDynamicModule("MathFunctions")

Dim myTypeBuilder As TypeBuilder = myModBuilder.DefineType("MyMathFunctions", _
                          TypeAttributes.Public)

Dim myMthdBuilder As MethodBuilder = myTypeBuilder.DefineMethod("Adder", _
              MethodAttributes.Public, GetType(Integer), _
              New Type() {GetType(Integer), GetType(Integer)})

' Create body via ILGenerator here ...

Dim myNewType As Type = myTypeBuilder.CreateType()

Dim myModule As [Module] = myMthdBuilder.GetModule()

Dim myModTypes As Type() = myModule.GetTypes()
Console.WriteLine("Module: {0}", myModule.Name)
Console.WriteLine("------- with path {0}", myModule.FullyQualifiedName)
Console.WriteLine("------- in assembly {0}", myModule.Assembly.FullName)
Dim myModType As Type
For Each myModType In  myModTypes
   Console.WriteLine("------- has type {0}", myModType.FullName)
Next myModType


ModuleBuilder myModBuilder = myAsmBuilder.DefineDynamicModule(
    "MathFunctions");
TypeBuilder myTypeBuilder = myModBuilder.DefineType("MyMathFunctions",
    TypeAttributes.Public);
MethodBuilder myMthdBuilder = myTypeBuilder.DefineMethod("Adder",
    MethodAttributes.Public,int.class.ToType(),
    new Type[] { int.class.ToType(),int.class.ToType() });

// Create body via ILGenerator here ...
Type myNewType = myTypeBuilder.CreateType();
Module myModule = myMthdBuilder.GetModule();
Type myModTypes[] = myModule.GetTypes();

Console.WriteLine("Module: {0}", myModule.get_Name());
Console.WriteLine("------- with path {0}", 
    myModule.get_FullyQualifiedName());
Console.WriteLine("------- in assembly {0}",
    myModule.get_Assembly().get_FullName());
for (int iCtr = 0; iCtr < myModTypes.length; iCtr++) {
    Type myModType = myModTypes[iCtr];
    Console.WriteLine("------- has type {0}",myModType.get_FullName());
}

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0
Show: