Question

Existe-t-il un moyen d'obtenir l'équivalent de GetType dans un constructeur statique?

Je souhaite parcourir les propriétés disponibles du type dans le constructeur statique, mais GetType est une méthode d'instance? Pourquoi est-ce? Le typeinfo devrait exister dans le contexte statique. Y a-t-il un moyen de contourner cela?

Était-ce utile?

La solution

Il suffit d'utiliser

Type type = typeof(TheCurrentType);

Cela ne devrait jamais être plus complexe que cela puisque vous connaissez toujours le type réel; il n'y a pas de polymorphisme à traiter dans les méthodes statiques.

Autres conseils

Je ne pense pas que vous puissiez obtenir des types dérivés (autrement qu'en itérant tous les types pour voir ce qui dérive du type actuel). Pour obtenir le type actuel, vous pouvez:

Type currentType = (new StackFrame()).GetMethod().DeclaringType;
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top