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

Definição

Obtém o Type com o nome especificado, especificando se deverá realizar uma pesquisa que diferencia maiúsculas de minúsculas e se deverá gerar uma exceção se o tipo não for encontrado.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. O tipo é carregado para reflexão apenas, não para execução.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

Parâmetros

typeName
String String String String

O nome qualificado pelo assembly do Type a ser obtido.The assembly-qualified name of the Type to get.

throwIfNotFound
Boolean Boolean Boolean Boolean

true para gerar um TypeLoadException se não for possível encontrar o tipo, false para retornar null se não for possível encontrar o tipo.true to throw a TypeLoadException if the type cannot be found; false to return null if the type cannot be found. A especificação de false também suprime algumas condições de exceção, mas não todas.Specifying false also suppresses some other exception conditions, but not all of them. Consulte a seção Exceções.See the Exceptions section.

ignoreCase
Boolean Boolean Boolean Boolean

true para executar uma pesquisa que não diferencia maiúsculas de minúsculas para typeName, false para realizar uma pesquisa que diferencia maiúsculas de minúsculas para typeName.true to perform a case-insensitive search for typeName; false to perform a case-sensitive search for typeName.

Retornos

O tipo com o nome especificado, se for encontrado; caso contrário, null.The type with the specified name, if found; otherwise, null. Caso o tipo não seja encontrado, o parâmetro throwIfNotFound especifica se null é retornado ou uma exceção é lançada.If the type is not found, the throwIfNotFound parameter specifies whether null is returned or an exception is thrown. Em alguns casos, uma exceção é lançada independentemente do valor de throwIfNotFound.In some cases, an exception is thrown regardless of the value of throwIfNotFound. Consulte a seção Exceções.See the Exceptions section.

Exceções

Um inicializador de classe é invocado e lança uma exceção.A class initializer is invoked and throws an exception.

throwIfNotFound é true e o tipo não foi encontrado.throwIfNotFound is true and the type is not found.

- ou --or- throwIfNotFound é true, e typeName contém caracteres inválidos, como uma guia inserida.throwIfNotFound is true and typeName contains invalid characters, such as an embedded tab. - ou --or- throwIfNotFound é true e typeName é uma cadeia de caracteres vazia.throwIfNotFound is true and typeName is an empty string.

- ou --or- throwIfNotFound é true e typeName representa um tipo de matriz com um tamanho inválido.throwIfNotFound is true and typeName represents an array type with an invalid size.

- ou --or- typeName representa uma matriz de objetos TypedReference .typeName represents an array of TypedReference objects.

typeName não inclui o nome do assembly.typeName does not include the assembly name.

- ou --or- throwIfNotFound é true e typeName contém sintaxe inválida, por exemplo, "MyType[,*,]".throwIfNotFound is true and typeName contains invalid syntax; for example, "MyType[,*,]".

- ou --or- typeName representa um tipo genérico que tem um tipo de ponteiro, um tipo ByRef ou Void como um dos argumentos de tipo.typeName represents a generic type that has a pointer type, a ByRef type, or Void as one of its type arguments.

- ou --or- typeName representa um tipo genérico que tem um número incorreto de argumentos de tipo.typeName represents a generic type that has an incorrect number of type arguments.

- ou --or- typeName representa um tipo genérico e um dos argumentos de tipo não atende às restrições do parâmetro de tipo correspondente.typeName represents a generic type, and one of its type arguments does not satisfy the constraints for the corresponding type parameter.

throwIfNotFound é true e o assembly ou uma de suas dependências não foi encontrado.throwIfNotFound is true and the assembly or one of its dependencies was not found.

O assembly ou uma de suas dependências foi encontrado, mas não foi possível carregá-lo.The assembly or one of its dependencies was found, but could not be loaded.

O assembly ou uma de suas dependências não é válido.The assembly or one of its dependencies is not valid.

- ou --or-

O assembly foi compilado com uma versão posterior do Common Language Runtime do que a versão carregada atualmente.The assembly was compiled with a later version of the common language runtime than the version that is currently loaded.

Somente .NET Core: Não há suporte para esse membro..NET Core only: This member is not supported.

Comentários

Se o assembly que contém o tipo ainda não estiver carregado no contexto somente de reflexão, usar o ReflectionOnlyGetType método é equivalente ao primeiro carregamento do assembly apenas para reflexão, usando o ReflectionOnlyLoad método e, em seguida, carregando o tipo chamando o método do 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. Para obter informações sobre nomes qualificados por assembly, consulte Type.AssemblyQualifiedName a propriedade.For information about assembly-qualified names, see the Type.AssemblyQualifiedName property. Para obter detalhes adicionais sobre como especificar nomes de tipo GetType(String, Boolean, Boolean) , consulte a sobrecarga do método.For additional details on specifying type names, see the GetType(String, Boolean, Boolean) method overload.

Se o assembly já estiver carregado para execução, outra cópia será carregada no contexto somente de reflexão.If the assembly is already loaded for execution, another copy is loaded into the reflection-only context.

O throwIfNotFound parâmetro especifica o que acontece quando o tipo não é encontrado e também suprime certas outras condições de exceção, conforme descrito na seção exceções.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. Algumas exceções são lançadas independentemente do valor de throwIfNotFound.Some exceptions are thrown regardless of the value of throwIfNotFound. Por exemplo, se o assembly não for válido, um BadImageFormatException será lançado mesmo se throwIfNotFound for false.For example, if the assembly is not valid, a BadImageFormatException is thrown even if throwIfNotFound is false.

Para obter mais informações sobre como usar o contexto somente de reflexão , consulte Como: carregar assemblies no contexto somente de reflexão.For more information about using the reflection-only context, see How to: Load Assemblies into the Reflection-Only Context.

Aplica-se a

Veja também