Sdílet prostřednictvím


MethodBase.ContainsGenericParameters Vlastnost

Definice

Získá hodnotu určující, zda obecná metoda obsahuje nepřiřazené parametry obecného typu.

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

Hodnota vlastnosti

true pokud aktuální MethodBase objekt představuje obecnou metodu, která obsahuje nepřiřazené parametry obecného typu; v opačném případě false.

Poznámky

Obecnou metodu lze vyvolat pouze v případě, že neexistují žádné definice obecného typu nebo otevřené konstruované typy v argumentech typu samotné metody nebo v jakýchkoli uzavřených typech. Vzhledem k tomu, že typy mohou být libovolně složité, je obtížné toto rekurzivní stanovení. Pro usnadnění a snížení pravděpodobnosti chyby ContainsGenericParameters poskytuje vlastnost standardní způsob, jak rozlišit uzavřené konstruované metody, které lze vyvolat, a otevřené konstruované metody, které nemohou. Pokud vlastnost ContainsGenericParameters vrátí true, metoda nelze vyvolat.

Vlastnost ContainsGenericParameters rekurzivně vyhledá parametry typu. Například vrátí true pro libovolnou metodu v otevřeném typu A<T> (A(Of T) v jazyce Visual Basic), i když samotná metoda není obecná. Porovnejte to s chováním IsGenericMethod vlastnosti, která se vrátí false pro takovou metodu.

ContainsGenericParameters Podobně parametr vlastnosti vrátí true pro libovolný konstruktor v otevřeném typu, i když konstruktory nemohou mít parametry typu vlastní.

Seznam invariantních podmínek pro podmínky specifické pro obecné metody naleznete ve IsGenericMethod vlastnosti. Seznam invariantních podmínek pro jiné termíny použité v obecné reflexi naleznete vlastnost Type.IsGenericType .

Platí pro

Viz také