Type.ReflectionOnlyGetType(String, Boolean, Boolean) Metoda

Definice

Získá Type se zadaným názvem, který určuje, jestli se má provést vyhledávání citlivé na velká a malá písmena, pokud se typ nenajde.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. Typ je načten pouze pro reflexi, nikoli pro provádění.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);
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

Parametry

typeName
String

Sestavení – kvalifikovaný název, Type který se má získat.The assembly-qualified name of the Type to get.

throwIfNotFound
Boolean

true Chcete-li vyvolat výjimku, TypeLoadException Pokud typ nebyl nalezen; false pro vrácení, null Pokud nebyl nalezen typ.true to throw a TypeLoadException if the type cannot be found; false to return null if the type cannot be found. Určení false také potlačí některé jiné podmínky výjimky, ale ne všechny.Specifying false also suppresses some other exception conditions, but not all of them. Viz část Výjimky.See the Exceptions section.

ignoreCase
Boolean

true Chcete-li provést vyhledávání bez rozlišování velkých a malých písmen pro typeName false typeName .true to perform a case-insensitive search for typeName; false to perform a case-sensitive search for typeName.

Návraty

Type

Typ se zadaným názvem, pokud byl nalezen; v opačném případě null .The type with the specified name, if found; otherwise, null. Pokud typ není nalezen, throwIfNotFound parametr určuje, zda null je vrácena, nebo je vyvolána výjimka.If the type is not found, the throwIfNotFound parameter specifies whether null is returned or an exception is thrown. V některých případech je vyvolána výjimka bez ohledu na hodnotu throwIfNotFound .In some cases, an exception is thrown regardless of the value of throwIfNotFound. Viz část Výjimky.See the Exceptions section.

Výjimky

typeName je null.typeName is null.

Je vyvolán inicializátor třídy, který vyvolá výjimku.A class initializer is invoked and throws an exception.

throwIfNotFound je true a typ nebyl nalezen.throwIfNotFound is true and the type is not found.

-nebo--or- throwIfNotFound je true a typeName obsahuje neplatné znaky, jako je například vložená karta.throwIfNotFound is true and typeName contains invalid characters, such as an embedded tab. -nebo--or- throwIfNotFound je true a typeName je prázdným řetězcem.throwIfNotFound is true and typeName is an empty string.

-nebo--or- throwIfNotFound je true a typeName představuje typ pole s neplatnou velikostí.throwIfNotFound is true and typeName represents an array type with an invalid size.

-nebo--or- typeName představuje pole TypedReference objektů.typeName represents an array of TypedReference objects.

typeName nezahrnuje název sestavení.typeName does not include the assembly name.

-nebo--or- throwIfNotFound je true a typeName obsahuje neplatnou syntaxi, například "MyType [, *,]".throwIfNotFound is true and typeName contains invalid syntax; for example, "MyType[,*,]".

-nebo--or- typeName představuje obecný typ, který má typ ukazatele, ByRef typ nebo Void jako jeden z jeho argumentů typu.typeName represents a generic type that has a pointer type, a ByRef type, or Void as one of its type arguments.

-nebo--or- typeName představuje obecný typ, který má nesprávný počet argumentů typu.typeName represents a generic type that has an incorrect number of type arguments.

-nebo--or- typeName představuje obecný typ a jeden z jeho argumentů typu nesplňuje omezení pro odpovídající parametr typu.typeName represents a generic type, and one of its type arguments does not satisfy the constraints for the corresponding type parameter.

throwIfNotFound je true a sestavení nebo jedna z jeho závislostí nebyla nalezena.throwIfNotFound is true and the assembly or one of its dependencies was not found.

Sestavení nebo některý prvek, na kterém závisí, byly nalezeny, ale nepodařilo se je načíst.The assembly or one of its dependencies was found, but could not be loaded.

Sestavení nebo některý objekt, na kterém závisí, nejsou platné.The assembly or one of its dependencies is not valid.

-nebo--or-

Sestavení bylo zkompilováno pomocí novější verze modulu CLR (Common Language Runtime), než je aktuálně načtená verze.The assembly was compiled with a later version of the common language runtime than the version that is currently loaded.

Pouze rozhraní .NET 5 + a .NET Core: Tento člen není podporován..NET 5+ and .NET Core only: This member is not supported.

Poznámky

Pokud sestavení obsahující daný typ není již načteno do kontextu pouze pro reflexi, použití ReflectionOnlyGetType metody je ekvivalentní k prvnímu načtení sestavení pouze pro reflexi, pomocí ReflectionOnlyLoad metody a poté načítání typu voláním Assembly.GetType metody sestavení.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. Informace o názvech kvalifikovaných pro sestavení naleznete v této Type.AssemblyQualifiedName Vlastnosti.For information about assembly-qualified names, see the Type.AssemblyQualifiedName property. Další podrobnosti o určení názvů typů naleznete v tématu GetType(String, Boolean, Boolean) přetížení metody.For additional details on specifying type names, see the GetType(String, Boolean, Boolean) method overload.

Pokud je sestavení již načteno pro provedení, je do kontextu pouze pro reflexi načtena další kopie.If the assembly is already loaded for execution, another copy is loaded into the reflection-only context.

throwIfNotFoundParametr určuje, co se stane, když se nenalezne typ, a také potlačí určité jiné podmínky výjimky, jak je popsáno v části výjimky.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. Některé výjimky jsou vyvolány bez ohledu na hodnotu throwIfNotFound .Some exceptions are thrown regardless of the value of throwIfNotFound. Například pokud je sestavení neplatné, BadImageFormatException je vyvolána i v případě, že throwIfNotFound je false .For example, if the assembly is not valid, a BadImageFormatException is thrown even if throwIfNotFound is false.

Další informace o použití kontextu pouze pro reflexi naleznete v tématu How to: Load Assemblies into Reflection-Only Context.For more information about using the reflection-only context, see How to: Load Assemblies into the Reflection-Only Context.

Platí pro

Viz také