ModuleBuilder.GetType Метод

Определение

Получает именованный тип, определенный в модуле.Gets the named type defined in the module.

Перегрузки

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)

Получает именованный тип, определенный в модуле.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

Параметры

className
String

Имя получаемого объекта Type.The name of the Type to get.

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

Type

Запрошенный тип, если тип определен в данном модуле, в противном случае — значение null.The requested type, if the type is defined in this module; otherwise, null.

Атрибуты

Исключения

Длина параметра className равна нулю или больше 1023.Length of className is zero or is greater than 1023.

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

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

При загрузке объекта Type произошла ошибка.An error is encountered while loading the Type.

Комментарии

Не используйте этот метод для создания типов массивов, типов указателей или типов ByRef.Do not use this method to generate array types, pointer types, or byref types. TypeBuilder.MakeArrayType TypeBuilder.MakePointerType TypeBuilder.MakeByRefType Вместо этого используйте методы, и.Use the TypeBuilder.MakeArrayType, TypeBuilder.MakePointerType, and TypeBuilder.MakeByRefType methods instead.

Примечание

Начиная с .NET Framework 2.0 с пакетом обновления 1 (SP1).NET Framework 2.0 Service Pack 1 , этот член больше не требует наличия ReflectionPermission ReflectionPermissionFlag.ReflectionEmit флага.Starting with the .NET Framework 2.0 с пакетом обновления 1 (SP1).NET Framework 2.0 Service Pack 1, this member no longer requires ReflectionPermission with the ReflectionPermissionFlag.ReflectionEmit flag. (См. раздел вопросы безопасности в порождении отражения.) Чтобы использовать эту функцию, приложение должно быть предназначено для .NET Framework 3,5.NET Framework 3.5 или более поздней версии.(See Security Issues in Reflection Emit.) To use this functionality, your application should target the .NET Framework 3,5.NET Framework 3.5 or later.

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

GetType(String, Boolean)

Получает определенный в модуле именованный тип (с возможностью игнорирования регистра символов в имени типа).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

Параметры

className
String

Имя получаемого объекта Type.The name of the Type to get.

ignoreCase
Boolean

Если значение true, при поиске не учитывается регистр.If true, the search is case-insensitive. Если значение false, при поиске учитывается регистр.If false, the search is case-sensitive.

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

Type

Запрошенный тип, если тип определен в данном модуле, в противном случае — значение null.The requested type, if the type is defined in this module; otherwise, null.

Атрибуты

Исключения

Длина параметра className равна нулю или больше 1023.Length of className is zero or is greater than 1023.

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

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

Комментарии

Не используйте этот метод для создания типов массивов, типов указателей или типов ByRef.Do not use this method to generate array types, pointer types, or byref types. TypeBuilder.MakeArrayType TypeBuilder.MakePointerType TypeBuilder.MakeByRefType Вместо этого используйте методы, и.Use the TypeBuilder.MakeArrayType, TypeBuilder.MakePointerType, and TypeBuilder.MakeByRefType methods instead.

Примечание

Начиная с .NET Framework 2.0 с пакетом обновления 1 (SP1).NET Framework 2.0 Service Pack 1 , этот член больше не требует наличия ReflectionPermission ReflectionPermissionFlag.ReflectionEmit флага.Starting with the .NET Framework 2.0 с пакетом обновления 1 (SP1).NET Framework 2.0 Service Pack 1, this member no longer requires ReflectionPermission with the ReflectionPermissionFlag.ReflectionEmit flag. (См. раздел вопросы безопасности в порождении отражения.) Чтобы использовать эту функцию, приложение должно быть предназначено для .NET Framework 3,5.NET Framework 3.5 или более поздней версии.(See Security Issues in Reflection Emit.) To use this functionality, your application should target the .NET Framework 3,5.NET Framework 3.5 or later.

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

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.

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.The name of the Type to get.

throwOnError
Boolean

Значение true, чтобы создать исключение, если тип не удается найти; значение false, чтобы вернуть значение null.true to throw an exception if the type cannot be found; false to return null.

ignoreCase
Boolean

Если значение true, при поиске не учитывается регистр.If true, the search is case-insensitive. Если значение false, при поиске учитывается регистр.If false, the search is case-sensitive.

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

Type

Заданный тип, если тип объявлен в данном модуле, в противном случае — значение null.The specified type, if the type is declared in this module; otherwise, null.

Атрибуты

Исключения

Длина параметра className равна нулю или больше 1023.Length of className is zero or is greater than 1023.

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

Запрошенный объект Type не является открытым и вызывающая сторона не имеет разрешения (ReflectionPermission) на отражение неоткрытых объектов за пределами текущей сборки.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 равно true, и указанный тип не был найден.throwOnError is true and the specified type is not found.

Комментарии

throwOnErrorПараметр влияет только на то, что происходит, если тип не найден.The throwOnError parameter only affects what happens when the type is not found. Он не влияет на другие исключения, которые могут возникать.It does not affect any other exceptions that might be thrown. В частности, если тип найден, но не может быть загружен, TypeLoadException может возникнуть исключение, даже если throwOnError имеет значение false .In particular, if the type is found but cannot be loaded, TypeLoadException can be thrown even if throwOnError is false.

Не используйте этот метод для создания типов массивов, типов указателей или типов ByRef.Do not use this method to generate array types, pointer types, or byref types. TypeBuilder.MakeArrayType TypeBuilder.MakePointerType TypeBuilder.MakeByRefType Вместо этого используйте методы, и.Use the TypeBuilder.MakeArrayType, TypeBuilder.MakePointerType, and TypeBuilder.MakeByRefType methods instead.

Примечание

Начиная с .NET Framework 2.0 с пакетом обновления 1 (SP1).NET Framework 2.0 Service Pack 1 , этот член больше не требует наличия ReflectionPermission ReflectionPermissionFlag.ReflectionEmit флага.Starting with the .NET Framework 2.0 с пакетом обновления 1 (SP1).NET Framework 2.0 Service Pack 1, this member no longer requires ReflectionPermission with the ReflectionPermissionFlag.ReflectionEmit flag. (См. раздел вопросы безопасности в порождении отражения.) Чтобы использовать эту функцию, приложение должно быть предназначено для .NET Framework 3,5.NET Framework 3.5 или более поздней версии.(See Security Issues in Reflection Emit.) To use this functionality, your application should target the .NET Framework 3,5.NET Framework 3.5 or later.

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