Export (0) Print
Expand All

Module.GetType Method (String, Boolean, Boolean)

Returns the specified type, specifying whether to make a case-sensitive search of the module and whether to throw an exception if the type cannot be found.

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

[ComVisibleAttribute(true)] 
public virtual Type GetType (
	string className,
	bool throwOnError,
	bool ignoreCase
)
/** @attribute ComVisibleAttribute(true) */ 
public Type GetType (
	String className, 
	boolean throwOnError, 
	boolean ignoreCase
)
ComVisibleAttribute(true) 
public function GetType (
	className : String, 
	throwOnError : boolean, 
	ignoreCase : boolean
) : Type

Parameters

className

The name of the type to locate. The name must be fully qualified with the namespace.

throwOnError

true to throw an exception if the type cannot be found; false to return a null reference (Nothing in Visual Basic).

ignoreCase

true for case-insensitive search; otherwise, false.

Return Value

A Type object representing the specified type, if the type is declared in this module; otherwise, a null reference (Nothing in Visual Basic).

Exception typeCondition

ArgumentNullException

className is a null reference (Nothing in Visual Basic).

TargetInvocationException

The class initializers are invoked and an exception is thrown.

ArgumentException

className is invalid, for example if it contains invalid characters, or if it is a zero-length string.

TypeLoadException

throwOnError is true, and the type cannot be found.

SecurityException

The caller does not have the required reflection permissions and attempts to reflect on a type that is not public.

The throwOnError parameter affects only what happens when the type is not found. It does not affect any other exceptions that might be thrown. In particular, if the type is found but cannot be loaded, TypeLoadException can be thrown even if throwOnError is false.

The following example displays the name of a type in the specified module. The throwOnError and ignoreCase parameters are specified as false.

using System;
using System.Reflection;

namespace ReflectionModule_Examples
{
    class MyMainClass
    {
        static void Main()
        {
            Module[] moduleArray;
            
            moduleArray = Assembly.GetExecutingAssembly().GetModules(false);
            
            //In a simple project with only one module, the module at index
            // 0 will be the module containing this class.
            Module myModule = moduleArray[0];

            Type myType;
            myType = myModule.GetType("ReflectionModule_Examples.MyMainClass", false, false);
            Console.WriteLine("Got type: {0}", myType.ToString());
        }
    }
}

package ReflectionModule_Examples; 

import System.*;
import System.Reflection.*;

class MyMainClass
{

    public static void main(String[] args)
    {
        Module moduleArray[];
        moduleArray = Assembly.GetExecutingAssembly().GetModules(false);
        //In a simple project with only one module, the module at index
        // 0 will be the module containing this class.
        Module myModule = (Module)moduleArray.get_Item(0);
        Type myType;
        myType = myModule.GetType("ReflectionModule_Examples.MyMainClass",
            false, false);
        Console.WriteLine("Got type: {0}", myType.ToString());
    } //main
} //MyMainClass   

Windows 98, Windows 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 .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0

Community Additions

ADD
Show:
© 2014 Microsoft