Поделиться через


ModuleBuilder.GetType Метод

Определение

Получает именованный тип, определенный в модуле.

Перегрузки

GetType(String)

Получает именованный тип, определенный в модуле.

GetType(String, Boolean)

Получает определенный в модуле именованный тип (с возможностью игнорирования регистра символов в имени типа).

GetType(String, Boolean, Boolean)

Получает определенный в модуле именованный тип (с возможностью игнорирования регистра символов в имени типа). Позволяет указать, следует ли создавать исключение, если тип не будет найден.

GetType(String)

Исходный код:
ModuleBuilder.cs

Получает именованный тип, определенный в модуле.

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

Параметры

className
String

Имя получаемого объекта Type.

Возвращаемое значение

Запрошенный тип, если тип определен в данном модуле, в противном случае — значение null.

Атрибуты

Исключения

Длина параметра className равна нулю или больше 1023.

className имеет значение null.

Запрошенный объект Type не является открытым и вызывающая сторона не имеет разрешения (ReflectionPermission) на отражение неоткрытых объектов за пределами текущей сборки.

Инициализатор класса вызывается и создает исключение.

При загрузке объекта Type произошла ошибка.

Комментарии

Не используйте этот метод для создания типов массивов, типов указателей или типов byref. Вместо этого используйте TypeBuilder.MakeArrayTypeметоды , TypeBuilder.MakePointerTypeи TypeBuilder.MakeByRefType .

Примечание

Начиная с платформа .NET Framework 2.0 с пакетом обновления 1 (SP1), этому члену ReflectionPermissionFlag.ReflectionEmit больше не нужен ReflectionPermission флаг . (См. раздел Проблемы безопасности при отображении отражения.) Чтобы использовать эту функцию, приложение должно быть предназначено для платформа .NET Framework 3.5 или более поздней версии.

Применяется к

GetType(String, Boolean)

Исходный код:
ModuleBuilder.cs

Получает определенный в модуле именованный тип (с возможностью игнорирования регистра символов в имени типа).

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

Параметры

className
String

Имя получаемого объекта Type.

ignoreCase
Boolean

Если значение true, при поиске не учитывается регистр. Если значение false, при поиске учитывается регистр.

Возвращаемое значение

Запрошенный тип, если тип определен в данном модуле, в противном случае — значение null.

Атрибуты

Исключения

Длина параметра className равна нулю или больше 1023.

className имеет значение null.

Запрошенный объект Type не является открытым и вызывающая сторона не имеет разрешения (ReflectionPermission) на отражение неоткрытых объектов за пределами текущей сборки.

Инициализатор класса вызывается и создает исключение.

Комментарии

Не используйте этот метод для создания типов массивов, типов указателей или типов byref. Вместо этого используйте TypeBuilder.MakeArrayTypeметоды , TypeBuilder.MakePointerTypeи TypeBuilder.MakeByRefType .

Примечание

Начиная с платформа .NET Framework 2.0 с пакетом обновления 1 (SP1), этому члену ReflectionPermissionFlag.ReflectionEmit больше не нужен ReflectionPermission флаг . (См. раздел Проблемы безопасности при отображении отражения.) Чтобы использовать эту функцию, приложение должно быть предназначено для платформа .NET Framework 3.5 или более поздней версии.

Применяется к

GetType(String, Boolean, Boolean)

Исходный код:
ModuleBuilder.cs

Получает определенный в модуле именованный тип (с возможностью игнорирования регистра символов в имени типа). Позволяет указать, следует ли создавать исключение, если тип не будет найден.

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

Параметры

className
String

Имя получаемого объекта Type.

throwOnError
Boolean

Значение true, чтобы создать исключение, если тип не удается найти; значение false, чтобы вернуть значение null.

ignoreCase
Boolean

Если значение true, при поиске не учитывается регистр. Если значение false, при поиске учитывается регистр.

Возвращаемое значение

Заданный тип, если тип объявлен в данном модуле, в противном случае — значение null.

Атрибуты

Исключения

Длина параметра className равна нулю или больше 1023.

className имеет значение null.

Запрошенный объект Type не является открытым и вызывающая сторона не имеет разрешения (ReflectionPermission) на отражение неоткрытых объектов за пределами текущей сборки.

Инициализатор класса вызывается и создает исключение.

Значение параметра throwOnError равно true, и указанный тип не был найден.

Комментарии

Параметр throwOnError влияет только на то, что происходит, если тип не найден. Это не влияет на другие исключения, которые могут быть выданы. В частности, если тип найден, но не может быть загружен, TypeLoadException может вызываться, даже если throwOnError имеет значение false.

Не используйте этот метод для создания типов массивов, типов указателей или типов byref. Вместо этого используйте TypeBuilder.MakeArrayTypeметоды , TypeBuilder.MakePointerTypeи TypeBuilder.MakeByRefType .

Примечание

Начиная с платформа .NET Framework 2.0 с пакетом обновления 1 (SP1), этому члену ReflectionPermissionFlag.ReflectionEmit больше не нужен ReflectionPermission флаг . (См. раздел Проблемы безопасности при отображении отражения.) Чтобы использовать эту функцию, приложение должно быть предназначено для платформа .NET Framework 3.5 или более поздней версии.

Применяется к