在UWP应用程序中是否有Attribute.IsDefined的替代品?

时间:2015-09-05 15:50:22

标签: c# uwp

似乎UWP应用程序缺少静态方法Attribute.IsDefined,我可以导航到Attribute类的元数据,并且方法就在那里,但项目不会编译声明'Attribute'不包含'IsDefined'的定义 - 很奇怪(事实上,根据IntelliSense,该类型根本没有静态方法)。

我打算查询具有某种属性的类型,例如

var types = this.GetType().GetTypeInfo().Assembly.GetTypes()
            .Where(t => Attribute.IsDefined(t, typeof (MyAttribute)));

我想知道是否有解决方法。

1 个答案:

答案 0 :(得分:3)

这应该有效:

var types = this.GetType().GetTypeInfo().Assembly.GetTypes()
        .Where(t => t.GetTypeInfo().GetCustomAttribute<MyAttribute>() != null);