Type.ReflectionOnlyGetType(String, Boolean, Boolean) Método

Definição

Atenção

ReflectionOnly loading is not supported and throws PlatformNotSupportedException.

Obtém-se com Type o nome especificado, especificando se deve realizar uma pesquisa sensível a maiúsculas minúsculas e se deve lançar uma exceção caso o tipo não seja encontrado. O tipo é carregado apenas para reflexão, não para execução.

public:
 static Type ^ ReflectionOnlyGetType(System::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);
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}")>]
static member ReflectionOnlyGetType : string * bool * bool -> Type
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

O nome qualificado para a assembleia do Type a obter.

throwIfNotFound
Boolean

true lançar a TypeLoadException se o tipo não puder ser encontrado; false devolver null se o tipo não puder ser encontrado. Especificar false também suprime algumas outras condições de exceção, mas não todas. Veja a secção de Exceções.

ignoreCase
Boolean

true para realizar uma pesquisa insensível a maiúsculas e minúsculas para typeName; false para realizar uma pesquisa sensível a maiúsculas e minúsculas para typeName.

Devoluções

O tipo com o nome especificado, se encontrado; caso contrário, null. Se o tipo não for encontrado, o throwIfNotFound parâmetro especifica se é devolvido ou se null é lançada uma exceção. Em alguns casos, uma exceção é lançada independentemente do valor de throwIfNotFound. Veja a secção de Exceções.

Atributos

Exceções

typeName é null.

É invocado um inicializador de classe que lança uma exceção.

throwIfNotFound é true e o tipo não é encontrado.

-ou-

throwIfNotFound é true e typeName contém caracteres inválidos, como um separador embutido.

-ou-

throwIfNotFound é true e typeName é uma cadeia vazia.

-ou-

throwIfNotFound é true e typeName representa um tipo de array com tamanho inválido.

-ou-

typeName representa um array de TypedReference objetos.

typeName não inclui o nome da assembleia.

-ou-

throwIfNotFound é true e typeName contém sintaxe inválida; por exemplo, "MyType[,*,]".

-ou-

typeName representa um tipo genérico que tem um tipo apontador, um ByRef tipo, ou Void como um dos seus argumentos de tipo.

-ou-

typeName representa um tipo genérico que tem um número incorreto de argumentos de tipo.

-ou-

typeName representa um tipo genérico, e um dos seus argumentos de tipo não satisfaz as restrições para o parâmetro de tipo correspondente.

throwIfNotFound is true e a assembly ou uma das suas dependências não foi encontrada.

A montagem ou uma das suas dependências foi encontrada, mas não pôde ser carregada.

A assembly ou uma das suas dependências não é uma assembly válida para o runtime atualmente carregado.

.NET Core e .NET 5+ apenas: Em todos os casos.

Observações

Se o conjunto que contém o tipo ainda não estiver carregado no contexto apenas de reflexão, usar o ReflectionOnlyGetType método equivale a primeiro carregar o conjunto apenas para reflexão, usar o ReflectionOnlyLoad método, e depois carregar o tipo chamando o método do Assembly.GetType montagem. Para informações sobre nomes qualificados para assembleia, consulte a Type.AssemblyQualifiedName propriedade. Para detalhes adicionais sobre a especificação dos nomes dos tipos, veja sobrecarga GetType(String, Boolean, Boolean) de métodos.

Se o assembly já estiver carregado para execução, outra cópia é carregada no contexto apenas de reflexão.

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 secção Exceções. Algumas exceções são lançadas independentemente do valor de throwIfNotFound. Por exemplo, se a montagem não for válida, a BadImageFormatException é lançado mesmo que throwIfNotFound seja false.

Para mais informações sobre o uso do contexto apenas de reflexão, veja Como: Carregar Assemblies no Contexto Reflection-Only.

Aplica-se a

Ver também