Type.ReflectionOnlyGetType(String, Boolean, Boolean) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Upozornění
ReflectionOnly loading is not supported and throws PlatformNotSupportedException.
Type Získá se zadaným názvem a určí, zda se má provést hledání s rozlišováním velkých a malých písmen a zda se má vyvolat výjimka, pokud typ nebyl nalezen. Typ se načte pouze pro reflexi, nikoli pro provedení.
public:
static Type ^ ReflectionOnlyGetType(System::String ^ typeName, bool throwIfNotFound, bool ignoreCase);
public static Type? ReflectionOnlyGetType (string typeName, bool throwIfNotFound, bool ignoreCase);
[System.Obsolete("ReflectionOnly loading is not supported and throws PlatformNotSupportedException.", DiagnosticId="SYSLIB0018", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
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
[<System.Obsolete("ReflectionOnly loading is not supported and throws PlatformNotSupportedException.", DiagnosticId="SYSLIB0018", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
static member ReflectionOnlyGetType : string * bool * bool -> Type
Public Shared Function ReflectionOnlyGetType (typeName As String, throwIfNotFound As Boolean, ignoreCase As Boolean) As Type
Parametry
- throwIfNotFound
- Boolean
true
k vyvolání TypeLoadException , pokud typ nebyl nalezen. false
Pokud typ nebyl nalezen, vrátí null
se. Zadáním false
se také potlačí některé další podmínky výjimky, ale ne všechny. Viz část Výjimky.
- ignoreCase
- Boolean
true
k provedení hledání bez rozlišování malých a velkých písmen pro typeName
. false
typeName
Návraty
Typ se zadaným názvem, pokud je nalezen; v opačném případě . null
Pokud typ není nalezen, parametr určuje, throwIfNotFound
zda null
je vrácena nebo je vyvolán výjimka. V některých případech dojde k výjimce bez ohledu na hodnotu .throwIfNotFound
Viz část Výjimky.
- Atributy
Výjimky
typeName
je null
.
Je vyvolán inicializátor třídy, který vyvolá výjimku.
throwIfNotFound
je true
a typ nebyl nalezen.
-nebo-
throwIfNotFound
je true
a typeName
obsahuje neplatné znaky, například vložené tabulátory.
-nebo-
throwIfNotFound
je true
a typeName
je prázdný řetězec.
-nebo-
throwIfNotFound
je true
a typeName
představuje typ pole s neplatnou velikostí.
-nebo-
typeName
představuje pole TypedReference objektů.
typeName
neobsahuje název sestavení.
-nebo-
throwIfNotFound
je true
a typeName
obsahuje neplatnou syntaxi, například MyType[,*,].
-nebo-
typeName
představuje obecný typ, který má typ ukazatele, ByRef
typ nebo Void jako jeden ze svých argumentů typu.
-nebo-
typeName
představuje obecný typ, který má nesprávný počet argumentů typu.
-nebo-
typeName
představuje obecný typ a jeden z argumentů jeho typu nesplňuje omezení pro odpovídající parametr typu.
throwIfNotFound
je true
a sestavení nebo jedna z jeho závislostí nebyla nalezena.
Sestavení nebo některý prvek, na kterém závisí, byly nalezeny, ale nepodařilo se je načíst.
Sestavení nebo jedna z jeho závislostí není platným sestavením pro aktuálně načtený modul runtime.
Pouze .NET Core a .NET 5+: Ve všech případech.
Poznámky
Pokud sestavení obsahující typ již není načten do kontextu pouze reflexe, použití ReflectionOnlyGetType metody je ekvivalentní k prvnímu načtení sestavení pouze pro reflexi, pomocí ReflectionOnlyLoad metody a poté načtení typu voláním metody sestavení Assembly.GetType . Informace o názvech kvalifikovaných pro sestavení najdete ve Type.AssemblyQualifiedName vlastnosti . Další podrobnosti o zadávání názvů typů najdete v GetType(String, Boolean, Boolean) přetížení metody.
Pokud je sestavení již načteno ke spuštění, je do kontextu pouze reflexe načtena další kopie.
Parametr throwIfNotFound
určuje, co se stane, když se typ nenajde, a také potlačí určité další podmínky výjimky, jak je popsáno v části Výjimky. Některé výjimky jsou vyvoláné bez ohledu na hodnotu .throwIfNotFound
Například pokud sestavení není platné, je vyvolán i v případě, BadImageFormatException že throwIfNotFound
je false
.
Další informace o použití kontextu jen pro reflexi naleznete v tématu Postupy: Načtení sestavení do kontextu Reflection-Only.