Type.ReflectionOnlyGetType(String, Boolean, Boolean) Metodo

Definizione

Ottiene l'oggetto Type con il nome specificato, indicando se eseguire una ricerca con distinzione tra maiuscole e minuscole e se generare un'eccezione in caso il tipo non venga trovato.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. Il tipo viene caricato a scopo di reflection, non per l'esecuzione.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

Parametri

typeName
String

Nome completo di assembly dell'oggetto Type da ottenere.The assembly-qualified name of the Type to get.

throwIfNotFound
Boolean

true per generare un'eccezione TypeLoadException se non è possibile trovare il tipo, false per restituire null se non è possibile trovare il tipo.true to throw a TypeLoadException if the type cannot be found; false to return null if the type cannot be found. Se si specifica false vengono eliminate alcune condizioni di eccezione, ma non tutte.Specifying false also suppresses some other exception conditions, but not all of them. Vedere la sezione relativa alle eccezioni.See the Exceptions section.

ignoreCase
Boolean

true per eseguire una ricerca di typeName senza distinzione tra maiuscole e minuscole,false per eseguire una ricerca di typeName con distinzione tra maiuscole e minuscole.true to perform a case-insensitive search for typeName; false to perform a case-sensitive search for typeName.

Restituisce

Tipo con il nome specificato, se presente; in caso contrario, null.The type with the specified name, if found; otherwise, null. Se il tipo non viene trovato, il parametro throwIfNotFound specifica se viene restituito null o se viene generata un'eccezione.If the type is not found, the throwIfNotFound parameter specifies whether null is returned or an exception is thrown. In alcuni casi, viene generata un'eccezione indipendentemente dal valore di throwIfNotFound.In some cases, an exception is thrown regardless of the value of throwIfNotFound. Vedere la sezione relativa alle eccezioni.See the Exceptions section.

Eccezioni

typeName è null.typeName is null.

Viene richiamato un inizializzatore di classi e viene generata un'eccezione.A class initializer is invoked and throws an exception.

throwIfNotFound è true e il tipo non è stato trovato.throwIfNotFound is true and the type is not found.

-oppure--or- throwIfNotFound è true e typeName contiene caratteri non validi, ad esempio una scheda incorporata.throwIfNotFound is true and typeName contains invalid characters, such as an embedded tab. -oppure--or- throwIfNotFound è true e typeName è una stringa vuota.throwIfNotFound is true and typeName is an empty string.

In alternativa-or- throwIfNotFound è true e typeName rappresenta un tipo di matrice con una dimensione non valida.throwIfNotFound is true and typeName represents an array type with an invalid size.

In alternativa-or- typeName rappresenta una matrice di oggetti TypedReference.typeName represents an array of TypedReference objects.

typeName non include il nome dell'assembly.typeName does not include the assembly name.

-oppure--or- throwIfNotFound è true e typeName contiene sintassi non valida, ad esempio "MyType[,*,]".throwIfNotFound is true and typeName contains invalid syntax; for example, "MyType[,*,]".

-oppure--or- typeName rappresenta un tipo generico che ha un tipo di puntatore, un tipo ByRef o Void tra i relativi argomenti di tipo.typeName represents a generic type that has a pointer type, a ByRef type, or Void as one of its type arguments.

In alternativa-or- typeName rappresenta un tipo generico che ha un numero errato di argomenti di tipo.typeName represents a generic type that has an incorrect number of type arguments.

-oppure--or- typeName rappresenta un tipo generico e uno dei relativi argomenti di tipo non soddisfa i vincoli per il parametro di tipo corrispondente.typeName represents a generic type, and one of its type arguments does not satisfy the constraints for the corresponding type parameter.

throwIfNotFound è true e l'assembly o una delle sue dipendenze non è stato trovato.throwIfNotFound is true and the assembly or one of its dependencies was not found.

L'assembly o una delle relative dipendenze è stato trovato, ma non può essere caricato.The assembly or one of its dependencies was found, but could not be loaded.

L'assembly o una delle relative dipendenze non è valido.The assembly or one of its dependencies is not valid.

-oppure--or-

L'assembly è stato compilato con una versione successiva di Common Language Runtime rispetto alla versione attualmente caricata.The assembly was compiled with a later version of the common language runtime than the version that is currently loaded.

Solo .NET Core: questo membro non è supportato..NET Core only: This member is not supported.

Commenti

Se l'assembly contenente il tipo non è già caricato nel contesto di sola reflection, l'utilizzo del ReflectionOnlyGetType metodo equivale a caricare innanzitutto l'assembly per la reflection, utilizzando il ReflectionOnlyLoad metodo e quindi caricando il tipo chiamando il metodo Metodo dell' Assembly.GetType assembly.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. Per informazioni sui nomi completi di assembly, vedere la Type.AssemblyQualifiedName proprietà.For information about assembly-qualified names, see the Type.AssemblyQualifiedName property. Per ulteriori informazioni sulla specifica dei nomi dei tipi, GetType(String, Boolean, Boolean) vedere l'overload del metodo.For additional details on specifying type names, see the GetType(String, Boolean, Boolean) method overload.

Se l'assembly è già caricato per l'esecuzione, un'altra copia viene caricata nel contesto di sola reflection.If the assembly is already loaded for execution, another copy is loaded into the reflection-only context.

Il throwIfNotFound parametro specifica cosa accade quando il tipo non viene trovato ed evita anche determinate altre condizioni di eccezione, come descritto nella sezione eccezioni.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. Alcune eccezioni vengono generate indipendentemente dal valore di throwIfNotFound.Some exceptions are thrown regardless of the value of throwIfNotFound. Se, ad esempio, l'assembly non è valido, BadImageFormatException viene generata un'eccezione throwIfNotFound anche falsese è.For example, if the assembly is not valid, a BadImageFormatException is thrown even if throwIfNotFound is false.

Per ulteriori informazioni sull'utilizzo del contesto Reflection-Only, vedere procedura: Caricare assembly nel contesto Reflection-Only.For more information about using the reflection-only context, see How to: Load Assemblies into the Reflection-Only Context.

Si applica a

Vedi anche