MethodBase.ContainsGenericParameters Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene un valore che indica se il metodo generico contiene parametri di tipo generico non assegnati.
public:
virtual property bool ContainsGenericParameters { bool get(); };
public virtual bool ContainsGenericParameters { get; }
member this.ContainsGenericParameters : bool
Public Overridable ReadOnly Property ContainsGenericParameters As Boolean
Valore della proprietà
true
se l'oggetto MethodBase corrente rappresenta un metodo generico contenente parametri di tipo generico non assegnati; in caso contrario, false
.
Commenti
Un metodo generico può essere richiamato solo se non sono presenti definizioni di tipo generiche o tipi creati aperti negli argomenti di tipo del metodo stesso o in qualsiasi tipo di inclusione. Poiché i tipi possono essere arbitrariamente complessi, rendendo difficile questa determinazione ricorsiva. Per praticità, e per ridurre la probabilità di errore, la ContainsGenericParameters proprietà offre un modo standard per distinguere tra metodi costruiti chiusi, che possono essere richiamati e metodi costruiti aperti, che non possono. Se la proprietà restituisce true
, il ContainsGenericParameters metodo non può essere richiamato.
La ContainsGenericParameters proprietà cerca in modo ricorsivo i parametri di tipo. Ad esempio, restituisce true
per qualsiasi metodo in un tipo A<T>
aperto (A(Of T)
in Visual Basic), anche se il metodo stesso non è generico. Contrasto con il comportamento della IsGenericMethod proprietà, che restituisce false
per tale metodo.
Analogamente, il ContainsGenericParameters parametro della proprietà restituisce true
per qualsiasi costruttore in un tipo aperto, anche se i costruttori non possono avere parametri di tipo propri.
Per un elenco delle condizioni invarianti per i termini specifici dei metodi generici, vedere la IsGenericMethod proprietà. Per un elenco delle condizioni invarianti per altri termini usati nella reflection generica, vedere la Type.IsGenericType proprietà.