Partager via


MethodBase.ContainsGenericParameters Propriété

Définition

Obtient une valeur indiquant si la méthode générique contient des paramètres de type générique non attribués.

public:
 virtual property bool ContainsGenericParameters { bool get(); };
public virtual bool ContainsGenericParameters { get; }
member this.ContainsGenericParameters : bool
Public Overridable ReadOnly Property ContainsGenericParameters As Boolean

Valeur de propriété

true si l’objet actuel MethodBase représente une méthode générique qui contient des paramètres de type générique non attribués ; sinon, false.

Remarques

Une méthode générique ne peut être appelée qu’en l’absence de définitions de type générique ou de types construits ouverts dans les arguments de type de la méthode elle-même ou dans tous les types englobants. Étant donné que les types peuvent être arbitrairement complexes, cette détermination récursive est difficile. Pour des raisons pratiques et pour réduire le risque d’erreur, la ContainsGenericParameters propriété offre un moyen standard de distinguer les méthodes construites fermées, qui peuvent être appelées et les méthodes construites ouvertes, qui ne peuvent pas. Si la ContainsGenericParameters propriété retourne true, la méthode ne peut pas être appelée.

La ContainsGenericParameters propriété recherche de manière récursive les paramètres de type. Par exemple, elle retourne true pour n’importe quelle méthode dans un type A<T> ouvert (A(Of T) en Visual Basic), même si la méthode elle-même n’est pas générique. Contrastez-le avec le comportement de la IsGenericMethod propriété, qui retourne false pour une telle méthode.

De même, le ContainsGenericParameters paramètre de propriété retourne true pour n’importe quel constructeur d’un type ouvert, même si les constructeurs ne peuvent pas avoir de paramètres de type propres.

Pour obtenir la liste des conditions invariantes pour les termes spécifiques aux méthodes génériques, consultez la IsGenericMethod propriété. Pour obtenir la liste des conditions invariantes pour les autres termes utilisés dans la réflexion générique, consultez la Type.IsGenericType propriété.

S’applique à

Voir aussi