2016-02-16 1 views
9

Ce code fonctionne très bien dans .NET (4.6 et avant)Comment vérifier si un type est abstrait dans .NET Core?

var types = typeof(SomeType).GetTypeInfo().Assembly.GetTypes() 
from type in types 
where !type.IsAbstract 

mais dans .NET de base (DNX de base 5.0), il produit une erreur de compilation:

Error CS1061 'Type' does not contain a definition for 'IsAbstract' and no extension method 'IsAbstract' accepting a first argument of type 'Type' could be found (are you missing a using directive or an assembly reference?)

Alors comment puis-je vérifier si un type est abstrait dans DNX Core 5.0 comme je le fais dans .NET Framework 4.6?

enter image description here

+14

'type.GetTypeInfo() IsAbstract' –

+0

@LucasTrzesniewski Exactement ce que je suis à la recherche de! Ajoutez-le comme une réponse. –

+3

Ce ne serait pas une très bonne réponse TBH, et je m'attends à ce que ce soit un doublon –

Répondre

1

Je posterai un des commentaires en réponse car il est ce que je demandais.

type.GetTypeInfo().IsAbstract