Compartir vía


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

Definición

Precaución

ReflectionOnly loading is not supported and throws PlatformNotSupportedException.

Obtiene el objeto Type con el nombre indicado, que especifica si se va a realizar una búsqueda donde se distingue entre mayúsculas y minúsculas y si se va a producir una excepción en caso de que no se encuentre el tipo. Se carga el tipo solo para reflexión, no para ejecución.

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

Parámetros

typeName
String

Nombre calificado con el ensamblado del Type que se va a obtener.

throwIfNotFound
Boolean

true para iniciar una excepción TypeLoadException si no se puede encontrar el tipo; false para devolver null si el tipo no se puede encontrar. Si se especifica false se suprimen otras condiciones de excepción, pero no todas. Vea la sección Excepciones.

ignoreCase
Boolean

true para realizar una búsqueda de typeName que no distinga entre mayúsculas y minúsculas; false para realizar una búsqueda de typeName que distinga entre mayúsculas y minúsculas.

Devoluciones

Tipo con el nombre especificado, si se encuentra; de lo contrario null. Si el tipo no se encuentra, el parámetro throwIfNotFound especifica si se devuelve null o se produce una excepción. En algunos casos, se produce una excepción con independencia del valor de throwIfNotFound. Vea la sección Excepciones.

Atributos

Excepciones

typeName es null.

Se invoca un inicializador de clase y genera una excepción.

throwIfNotFound es true y no se encuentra el tipo.

O bien

throwIfNotFound es true y typeName contiene caracteres no válidos, como una pestaña insertada.

O bien

throwIfNotFound es true y typeName es una cadena vacía.

O bien

throwIfNotFound es true y typeName representa un tipo de matriz con un tamaño no válido.

O bien

typeName representa una matriz de objetos TypedReference.

typeName no incluye el nombre del ensamblado.

O bien

throwIfNotFound es true y typeName contiene sintaxis no válida; por ejemplo, "MyType[,*,]".

O bien

typeName representa un tipo genérico que tiene un tipo de puntero, un tipo ByRef o Void como uno de sus argumentos de tipo.

O bien

typeName representa un tipo genérico que tiene un número incorrecto de argumentos de tipo.

O bien

typeName representa un tipo genérico y uno de sus argumentos de tipo no satisface las restricciones del parámetro de tipo correspondiente.

throwIfNotFound es true y no se encontró el ensamblado o alguna de sus dependencias.

Se encontró el ensamblado o una de sus dependencias, pero no se pudo cargar.

El ensamblado o una de sus dependencias no es un ensamblado válido para el tiempo de ejecución cargado actualmente.

.NET Core y .NET 5+ solo: En todos los casos.

Comentarios

Si el ensamblado que contiene el tipo aún no se carga en el contexto de solo reflexión, el uso del ReflectionOnlyGetType método equivale a cargar primero el ensamblado para la reflexión, usando el ReflectionOnlyLoad método y, a continuación, cargando el tipo llamando al método del Assembly.GetType ensamblado. Para obtener información sobre los nombres calificados para ensamblados, vea la Type.AssemblyQualifiedName propiedad . Para obtener más información sobre cómo especificar nombres de tipo, consulte la sobrecarga del GetType(String, Boolean, Boolean) método.

Si el ensamblado ya está cargado para su ejecución, se carga otra copia en el contexto de solo reflexión.

El throwIfNotFound parámetro especifica lo que sucede cuando no se encuentra el tipo y también suprime ciertas otras condiciones de excepción, como se describe en la sección Excepciones. Algunas excepciones se inician independientemente del valor de throwIfNotFound. Por ejemplo, si el ensamblado no es válido, se produce una BadImageFormatException excepción aunque throwIfNotFound sea false.

Para obtener más información sobre el uso del contexto de solo reflexión, vea Cómo: Cargar ensamblados en el contexto de Reflection-Only.

Se aplica a

Consulte también