Windows 通用应用程序中的反思

Reflection in Windows Universal Apps

我需要使用 GetProperties 方法,以便测试特定 class 中的任何属性是否具有指定的自定义属性。但是,似乎 Windows Universal Apps 似乎不支持此功能:

obj.GetType().GetProperties()

引发错误:

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

我需要参考什么才能使用完整的反射库?

提前致谢。

将此添加到您的使用语句中:

using System.Reflection;

然后就可以使用obj.GetType().GetRuntimeProperties()方法了。此方法 return 定义了指定类型上的所有属性,包括继承的、非 public、实例和静态属性。请记住,此行为与 GetProperties() 的行为略有不同,后者仅 return public 属性。