2016-02-16 11 views
9

Этот код прекрасно работает в .NET (4.6 и до)Как проверить, абстрактный ли тип в .NET Core?

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

но в .NET Ядра (DNX Ядра 5.0) он производит ошибку компиляции:

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?)

Так как я могу проверить, является ли тип абстрактным в DNX Core 5.0 способом, который я делаю в .NET Framework 4.6?

enter image description here

+14

'type.GetTypeInfo() IsAbstract' –

+0

@LucasTrzesniewski Именно то, что я находясь в поиске! Добавьте его в качестве ответа. –

+3

Это не очень хороший ответ TBH, и я ожидаю, что это будет дубликат. –

ответ

1

Я отправляю один из комментариев, как ответ, так как это то, что я просил:.

type.GetTypeInfo().IsAbstract