ModuleBuilder.GetType Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
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
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
- 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
- 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.