MethodBase.ContainsGenericParameters Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient une valeur indiquant si la méthode générique contient des paramètres de type générique non assigné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 MethodBase actuel représente une méthode générique contenant des paramètres de type générique non assignés ; sinon, false
.
Remarques
Une méthode générique ne peut être appelée que s’il n’y a pas 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 les types englobants. Étant donné que les types peuvent être arbitrairement complexes, il est difficile de rendre cette détermination récursive. Pour des raisons pratiques et pour réduire le risque d’erreur, la ContainsGenericParameters propriété fournit un moyen standard de faire la distinction entre 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. Comparez cela avec le comportement de la IsGenericMethod propriété, qui retourne false
pour une telle méthode.
De même, le paramètre de ContainsGenericParameters propriété retourne true
pour n’importe quel constructeur dans un type ouvert, même si les constructeurs ne peuvent pas avoir leurs propres paramètres de type.
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é .