MethodBase.GetGenericArguments Método

Definición

Devuelve una matriz de objetos Type que representan los argumentos de tipo de un método genérico o los parámetros de tipo de una definición de método genérico.

public:
 virtual cli::array <Type ^> ^ GetGenericArguments();
public virtual Type[] GetGenericArguments ();
[System.Runtime.InteropServices.ComVisible(true)]
public virtual Type[] GetGenericArguments ();
abstract member GetGenericArguments : unit -> Type[]
override this.GetGenericArguments : unit -> Type[]
[<System.Runtime.InteropServices.ComVisible(true)>]
abstract member GetGenericArguments : unit -> Type[]
override this.GetGenericArguments : unit -> Type[]
Public Overridable Function GetGenericArguments () As Type()

Devoluciones

Type[]

Una matriz de objetos Type que representan los argumentos de tipo de un método genérico o los parámetros de tipo de una definición de método genérico. Devuelve una matriz vacía si el método actual no es un método genérico.

Atributos

Excepciones

El objeto actual es de tipo ConstructorInfo. Los constructores genéricos no se admiten en la versión 2.0 de .NET Framework. Esta excepción es el comportamiento predeterminado si no se reemplaza este método en una clase derivada.

Comentarios

Los elementos de la matriz devuelta están en el orden en que aparecen en la lista de parámetros de tipo para el método genérico.

  • Si el método actual es un método construido cerrado (es decir, la ContainsGenericParameters propiedad devuelve false), la matriz devuelta por el GetGenericArguments método contiene los tipos que se han asignado a los parámetros de tipo genérico de la definición de método genérico.

  • Si el método actual es una definición de método genérico, la matriz contiene los parámetros de tipo.

  • Si el método actual es un método construido abierto (es decir, la ContainsGenericParameters propiedad devuelve true) en la que se han asignado tipos específicos a algunos parámetros de tipo y parámetros de tipo de los tipos genéricos envolventes se han asignado a otros parámetros de tipo, la matriz contiene ambos tipos y parámetros de tipo. Utilice la IsGenericParameter propiedad para separarlas. Para ver una demostración de este escenario, vea el ejemplo de código proporcionado para la ContainsGenericParameters propiedad .

Los constructores genéricos no se admiten en la versión 2.0 de .NET Framework. Esta propiedad produce NotSupportedException si no se reemplaza en una clase derivada, por lo que se produce una excepción si la instancia actual es de tipo ConstructorInfo.

Para obtener una lista de las condiciones invariables de los términos específicos de los métodos genéricos, vea la IsGenericMethod propiedad . Para obtener una lista de las condiciones invariables para otros términos usados en la reflexión genérica, vea la Type.IsGenericType propiedad .

Se aplica a

Consulte también