Module.ResolveType Método
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Devuelve el tipo identificado por un token de metadatos.
ResolveType(Int32) |
Devuelve el tipo identificado por el token de metadatos especificado. |
ResolveType(Int32, Type[], Type[]) |
Devuelve el campo identificado por el token de metadatos especificado, en el contexto definido por los parámetros de tipo genérico especificados. |
- Source:
- Module.cs
- Source:
- Module.cs
- Source:
- Module.cs
Devuelve el tipo identificado por el token de metadatos especificado.
public:
Type ^ ResolveType(int metadataToken);
public Type ResolveType (int metadataToken);
member this.ResolveType : int -> Type
Public Function ResolveType (metadataToken As Integer) As Type
Parámetros
- metadataToken
- Int32
Token de metadatos que identifica un tipo en el módulo.
Devoluciones
Objeto Type que representa el tipo identificado por el token de metadatos especificado.
Excepciones
metadataToken
no es un token válido para un tipo en el ámbito del módulo actual.
o bien
metadataToken
es un TypeSpec
cuya firma contiene el tipo de elemento var
(un parámetro de tipo de un tipo genérico) o mvar
(un parámetro de tipo de un método genérico).
metadataToken
no es un token válido en el ámbito del módulo actual.
Comentarios
Para resolver un token de metadatos para una TypeSpec
cuya firma contiene ELEMENT_TYPE_VAR
o ELEMENT_TYPE_MVAR
, use la sobrecarga del ResolveType(Int32, Type[], Type[]) método , que permite proporcionar el contexto necesario. Es decir, al resolver un token de metadatos para un tipo que depende de los parámetros de tipo genérico del tipo genérico o del método genérico en el que se incrusta el token, debe usar la sobrecarga que le permite proporcionar esos parámetros de tipo.
Nota
Puede encontrar información sobre los tokens de metadatos en la documentación de Common Language Infrastructure (CLI), especialmente "Partición II: Definición de metadatos y semántica". Para obtener más información, consulte ECMA 335 Common Language Infrastructure (CLI).
Se aplica a
.NET 9 y otras versiones
Producto | Versiones |
---|---|
.NET | Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 2.0, 2.1 |
- Source:
- Module.cs
- Source:
- Module.cs
- Source:
- Module.cs
Devuelve el campo identificado por el token de metadatos especificado, en el contexto definido por los parámetros de tipo genérico especificados.
public:
virtual Type ^ ResolveType(int metadataToken, cli::array <Type ^> ^ genericTypeArguments, cli::array <Type ^> ^ genericMethodArguments);
public:
Type ^ ResolveType(int metadataToken, cli::array <Type ^> ^ genericTypeArguments, cli::array <Type ^> ^ genericMethodArguments);
public virtual Type ResolveType (int metadataToken, Type[]? genericTypeArguments, Type[]? genericMethodArguments);
public virtual Type ResolveType (int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);
public Type ResolveType (int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments);
abstract member ResolveType : int * Type[] * Type[] -> Type
override this.ResolveType : int * Type[] * Type[] -> Type
member this.ResolveType : int * Type[] * Type[] -> Type
Public Overridable Function ResolveType (metadataToken As Integer, genericTypeArguments As Type(), genericMethodArguments As Type()) As Type
Public Function ResolveType (metadataToken As Integer, genericTypeArguments As Type(), genericMethodArguments As Type()) As Type
Parámetros
- metadataToken
- Int32
Token de metadatos que identifica un tipo en el módulo.
- genericTypeArguments
- Type[]
Matriz de objetos Type que representan los argumentos de tipo genérico del tipo en cuyo ámbito se encuentra el token; o es null
si dicho tipo no es genérico.
- genericMethodArguments
- Type[]
Matriz de objetos Type que representan los argumentos de tipo genérico del método en cuyo ámbito se encuentra el token; o es null
si dicho método no es genérico.
Devoluciones
Objeto Type que representa el tipo identificado por el token de metadatos especificado.
Excepciones
metadataToken
no es un token válido para un tipo en el ámbito del módulo actual.
o bien
metadataToken
es un TypeSpec
cuya firma contiene el tipo de elemento var
(un parámetro de tipo de un tipo genérico) o mvar
(un parámetro de tipo de un método genérico) y no se proporcionaron los argumentos de tipo genérico necesarios para uno o ambos parámetros genericTypeArguments
y genericMethodArguments
.
metadataToken
no es un token válido en el ámbito del módulo actual.
Comentarios
Use el Type.GetGenericArguments método en el tipo donde metadataToken
está en el ámbito para obtener una matriz de argumentos de tipo genérico para genericTypeArguments
. Use el MethodInfo.GetGenericArguments método en el método donde metadataToken
está en el ámbito para obtener una matriz de argumentos de tipo genérico para genericTypeArguments
. Siempre es seguro proporcionar estos argumentos, incluso cuando no son necesarios.
Nota
Puede encontrar información sobre los tokens de metadatos en la documentación de Common Language Infrastructure (CLI), especialmente "Partición II: Definición de metadatos y semántica". Para obtener más información, consulte ECMA 335 Common Language Infrastructure (CLI).
Para el código que muestra la resolución de tokens mediante el contexto genérico (es decir, los parámetros de tipo genérico del tipo genérico o el método genérico en el que está incrustado el token) consulte el ResolveMethod(Int32, Type[], Type[]) método .
Se aplica a
.NET 9 y otras versiones
Producto | Versiones |
---|---|
.NET | Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 2.0, 2.1 |
Comentarios de .NET
.NET es un proyecto de código abierto. Seleccione un vínculo para proporcionar comentarios: