Επεξεργασία

Κοινή χρήση μέσω


ModuleBuilder.GetType Method

Definition

Gets the named type defined in the module.

Overloads

GetType(String)

Gets the named type defined in the module.

GetType(String, Boolean)

Gets the named type defined in the module, optionally ignoring the case of the type name.

GetType(String, Boolean, Boolean)

Gets the named type defined in the module, optionally ignoring the case of the type name. Optionally throws an exception if the type is not found.

GetType(String)

Source:
ModuleBuilder.cs

Gets the named type defined in the module.

public:
 override Type ^ GetType(System::String ^ className);
public override Type? GetType (string className);
public override Type GetType (string className);
[System.Runtime.InteropServices.ComVisible(true)]
public override Type GetType (string className);
override this.GetType : string -> Type
[<System.Runtime.InteropServices.ComVisible(true)>]
override this.GetType : string -> Type
Public Overrides Function GetType (className As String) As Type

Parameters

className
String

The name of the Type to get.

Returns

The requested type, if the type is defined in this module; otherwise, null.

Attributes

Exceptions

Length of className is zero or is greater than 1023.

className is null.

The requested Type is non-public and the caller does not have ReflectionPermission to reflect non-public objects outside the current assembly.

A class initializer is invoked and throws an exception.

An error is encountered while loading the Type.

Remarks

Do not use this method to generate array types, pointer types, or byref types. Use the TypeBuilder.MakeArrayType, TypeBuilder.MakePointerType, and TypeBuilder.MakeByRefType methods instead.

Note

Starting with the .NET Framework 2.0 Service Pack 1, this member no longer requires ReflectionPermission with the ReflectionPermissionFlag.ReflectionEmit flag. (See Security Issues in Reflection Emit.) To use this functionality, your application should target the .NET Framework 3.5 or later.

Applies to

GetType(String, Boolean)

Source:
ModuleBuilder.cs

Gets the named type defined in the module, optionally ignoring the case of the type name.

public:
 override Type ^ GetType(System::String ^ className, bool ignoreCase);
public override Type? GetType (string className, bool ignoreCase);
public override Type GetType (string className, bool ignoreCase);
[System.Runtime.InteropServices.ComVisible(true)]
public override Type GetType (string className, bool ignoreCase);
override this.GetType : string * bool -> Type
[<System.Runtime.InteropServices.ComVisible(true)>]
override this.GetType : string * bool -> Type
Public Overrides Function GetType (className As String, ignoreCase As Boolean) As Type

Parameters

className
String

The name of the Type to get.

ignoreCase
Boolean

If true, the search is case-insensitive. If false, the search is case-sensitive.

Returns

The requested type, if the type is defined in this module; otherwise, null.

Attributes

Exceptions

Length of className is zero or is greater than 1023.

className is null.

The requested Type is non-public and the caller does not have ReflectionPermission to reflect non-public objects outside the current assembly.

A class initializer is invoked and throws an exception.

Remarks

Do not use this method to generate array types, pointer types, or byref types. Use the TypeBuilder.MakeArrayType, TypeBuilder.MakePointerType, and TypeBuilder.MakeByRefType methods instead.

Note

Starting with the .NET Framework 2.0 Service Pack 1, this member no longer requires ReflectionPermission with the ReflectionPermissionFlag.ReflectionEmit flag. (See Security Issues in Reflection Emit.) To use this functionality, your application should target the .NET Framework 3.5 or later.

Applies to

GetType(String, Boolean, Boolean)

Source:
ModuleBuilder.cs

Gets the named type defined in the module, optionally ignoring the case of the type name. Optionally throws an exception if the type is not found.

public:
 override Type ^ GetType(System::String ^ className, bool throwOnError, bool ignoreCase);
public override Type? GetType (string className, bool throwOnError, bool ignoreCase);
public override Type GetType (string className, bool throwOnError, bool ignoreCase);
[System.Runtime.InteropServices.ComVisible(true)]
public override Type GetType (string className, bool throwOnError, bool ignoreCase);
override this.GetType : string * bool * bool -> Type
[<System.Runtime.InteropServices.ComVisible(true)>]
override this.GetType : string * bool * bool -> Type
Public Overrides Function GetType (className As String, throwOnError As Boolean, ignoreCase As Boolean) As Type

Parameters

className
String

The name of the Type to get.

throwOnError
Boolean

true to throw an exception if the type cannot be found; false to return null.

ignoreCase
Boolean

If true, the search is case-insensitive. If false, the search is case-sensitive.

Returns

The specified type, if the type is declared in this module; otherwise, null.

Attributes

Exceptions

Length of className is zero or is greater than 1023.

className is null.

The requested Type is non-public and the caller does not have ReflectionPermission to reflect non-public objects outside the current assembly.

A class initializer is invoked and throws an exception.

throwOnError is true and the specified type is not found.

Remarks

The throwOnError parameter only affects 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.

Do not use this method to generate array types, pointer types, or byref types. Use the TypeBuilder.MakeArrayType, TypeBuilder.MakePointerType, and TypeBuilder.MakeByRefType methods instead.

Note

Starting with the .NET Framework 2.0 Service Pack 1, this member no longer requires ReflectionPermission with the ReflectionPermissionFlag.ReflectionEmit flag. (See Security Issues in Reflection Emit.) To use this functionality, your application should target the .NET Framework 3.5 or later.

Applies to