MethodBase.ContainsGenericParameters Tulajdonság

Definíció

Beolvas egy értéket, amely jelzi, hogy az általános metódus nem hozzárendelt általános típusparamétereket tartalmaz-e.

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

Tulajdonság értéke

trueha az aktuális MethodBase objektum egy általános metódust jelöl, amely nem hozzárendelt általános típusparamétereket tartalmaz; ellenkező esetben. false

Megjegyzések

Az általános metódusok csak akkor hívhatók meg, ha nincsenek általános típusdefiníciók vagy nyitott, strukturált típusok a metódus típusargumentumaiban vagy bármely beágyazási típusban. Mivel a típusok tetszőlegesen összetettek lehetnek, ezért ez a rekurzív meghatározás nehéz. A kényelem és a hibalehetőségek csökkentése érdekében a ContainsGenericParameters tulajdonság szabványos módszert biztosít a meghívható zárt építésű metódusok és a nyitott, nem használható metódusok megkülönböztetésére. Ha a ContainsGenericParameters tulajdonság visszaadja true, a metódus nem hívható meg.

A ContainsGenericParameters tulajdonság rekurzív módon keres típusparamétereket. Például true ad vissza egy nyitott típusú A<T> (A(Of T) Visual Basic), bár maga a metódus nem általános. Ezzel szemben a tulajdonság viselkedése IsGenericMethod , amely egy ilyen metódushoz ad vissza false .

Hasonlóképpen, a ContainsGenericParameters tulajdonságparaméter egy nyitott típusú konstruktorhoz is visszatér true , annak ellenére, hogy a konstruktorok nem rendelkeznek saját típusparaméterekkel.

Az általános metódusokra vonatkozó kifejezések invariáns feltételeinek listáját a IsGenericMethod tulajdonságban találja. Az általános tükrözésben használt egyéb kifejezések invariáns feltételeinek listáját a Type.IsGenericType tulajdonságban találja.

A következőre érvényes:

Lásd még