Type.ReflectionOnlyGetType(String, Boolean, Boolean) Type.ReflectionOnlyGetType(String, Boolean, Boolean) Type.ReflectionOnlyGetType(String, Boolean, Boolean) Type.ReflectionOnlyGetType(String, Boolean, Boolean) Method

Определение

Возвращает объект Type с заданным именем, позволяющий определить, будет ли учитываться регистр при поиске, и будет ли создаваться исключение в случае невозможности найти тип.Gets the Type with the specified name, specifying whether to perform a case-sensitive search and whether to throw an exception if the type is not found. Тип загружается не для выполнения, а только для отражения.The type is loaded for reflection only, not for execution.

public:
 static Type ^ ReflectionOnlyGetType(System::String ^ typeName, bool throwIfNotFound, bool ignoreCase);
public static Type ReflectionOnlyGetType (string typeName, bool throwIfNotFound, bool ignoreCase);
static member ReflectionOnlyGetType : string * bool * bool -> Type
Public Shared Function ReflectionOnlyGetType (typeName As String, throwIfNotFound As Boolean, ignoreCase As Boolean) As Type

Параметры

typeName
String String String String

Имя искомого типа Type с указанием сборки.The assembly-qualified name of the Type to get.

throwIfNotFound
Boolean Boolean Boolean Boolean

Значение true, чтобы в случае невозможности найти тип создавалось исключение TypeLoadException; значение false, чтобы при невозможности найти тип возвращалось значение null.true to throw a TypeLoadException if the type cannot be found; false to return null if the type cannot be found. Кроме того, при указании значения false подавляются некоторые другие условия возникновения исключений, но не все из них.Specifying false also suppresses some other exception conditions, but not all of them. См. раздел "Исключения".See the Exceptions section.

ignoreCase
Boolean Boolean Boolean Boolean

Значение true, чтобы не учитывать регистр при поиске typeName, значение false, чтобы учитывать регистр при поиске typeName.true to perform a case-insensitive search for typeName; false to perform a case-sensitive search for typeName.

Возвраты

Тип с указанным именем, если он существует; в противном случае — значение null.The type with the specified name, if found; otherwise, null. Если тип не найден, параметр throwIfNotFound определяет дальнейшее действие — возврат значения null или создание исключения.If the type is not found, the throwIfNotFound parameter specifies whether null is returned or an exception is thrown. В некоторых случаях исключение создается независимо от значения параметра throwIfNotFound.In some cases, an exception is thrown regardless of the value of throwIfNotFound. См. раздел "Исключения".See the Exceptions section.

Исключения

Инициализатор класса вызывается и создает исключение.A class initializer is invoked and throws an exception.

throwIfNotFound имеет значение true, и тип не найден.throwIfNotFound is true and the type is not found.

-или--or- throwIfNotFound имеет значение true, и typeName содержит недопустимые знаки, например внедренные табуляции.throwIfNotFound is true and typeName contains invalid characters, such as an embedded tab. -или--or- throwIfNotFound имеет значение true, и typeName является пустой строкой.throwIfNotFound is true and typeName is an empty string.

-или--or- throwIfNotFound имеет значение true, и typeName представляет тип массива с недопустимым размером.throwIfNotFound is true and typeName represents an array type with an invalid size.

-или--or- typeName представляет массив объектов TypedReference.typeName represents an array of TypedReference objects.

typeName не включает имя сборки.typeName does not include the assembly name.

-или--or- throwIfNotFound имеет значение true, и typeName содержит недопустимый синтаксис (например, "MyType[,*,]").throwIfNotFound is true and typeName contains invalid syntax; for example, "MyType[,*,]".

-или--or- typeName представляет универсальный тип, имеющий тип указателя, тип ByRef или Void в качестве одного из его аргументов типа.typeName represents a generic type that has a pointer type, a ByRef type, or Void as one of its type arguments.

-или--or- typeName представляет универсальный тип, который содержит неправильное количество аргументов типа.typeName represents a generic type that has an incorrect number of type arguments.

-или--or- typeName представляет универсальный тип, и один из его аргументов типа не удовлетворяет ограничениям для соответствующего параметра типа.typeName represents a generic type, and one of its type arguments does not satisfy the constraints for the corresponding type parameter.

throwIfNotFound имеет значение true, и не удалось найти сборку либо одну из ее зависимостей.throwIfNotFound is true and the assembly or one of its dependencies was not found.

Сборка или одна из ее зависимостей найдена, но не может быть загружена.The assembly or one of its dependencies was found, but could not be loaded.

Сборка или одна из ее зависимостей является недопустимой.The assembly or one of its dependencies is not valid.

-или--or- Сборка была скомпилирована в более поздней версии среды CLR, чем версия, загруженная в текущий момент.The assembly was compiled with a later version of the common language runtime than the version that is currently loaded.

Комментарии

Если сборка, содержащая тип еще не загружена в контекст только для отражения, с помощью ReflectionOnlyGetType метод является эквивалентно первой загрузке сборки, а только для отражения с помощью ReflectionOnlyLoad метода и затем загрузив тип путем вызова сборки Assembly.GetType метод.If the assembly containing the type is not already loaded into the reflection-only context, using the ReflectionOnlyGetType method is equivalent to first loading the assembly for reflection only, using the ReflectionOnlyLoad method, and then loading the type by calling the assembly's Assembly.GetType method. Сведения об именах, с указанием сборки см. в разделе Type.AssemblyQualifiedName свойство.For information about assembly-qualified names, see the Type.AssemblyQualifiedName property. Дополнительные сведения об указании имен типов см. в разделе GetType(String, Boolean, Boolean) перегрузки метода.For additional details on specifying type names, see the GetType(String, Boolean, Boolean) method overload.

Если сборка уже загружена для выполнения, другая копия загружается в контекст только для отражения.If the assembly is already loaded for execution, another copy is loaded into the reflection-only context.

throwIfNotFound Параметр указывает, что произойдет, если тип не найден, а также подавляются некоторые другие условия исключения, как описано в раздел "исключения".The throwIfNotFound parameter specifies what happens when the type is not found, and also suppresses certain other exception conditions, as described in the Exceptions section. Некоторые исключения создаются независимо от значения throwIfNotFound.Some exceptions are thrown regardless of the value of throwIfNotFound. Например, если сборка не является допустимым BadImageFormatException возникает даже в том случае, если throwIfNotFound является false.For example, if the assembly is not valid, a BadImageFormatException is thrown even if throwIfNotFound is false.

Дополнительные сведения об использовании в контексте только для отражения, см. в разделе как: Загрузка сборок в контекст, предназначенный только для отражения.For more information about using the reflection-only context, see How to: Load Assemblies into the Reflection-Only Context.

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

Дополнительно