我正在尝试查看给定方法是否使用属性修饰(所讨论的属性为NUnit.Framework.TestAttribute
)但我需要能够检查属性,而不管属性是什么版本。目前,我在使用反射的项目中有nunit.framework.dll
版本2.6.2,在测试中有版本2.6.0的dll。反射没有找到属性。
有没有办法
bool isTest = method.GetCustomAttributes(typeof(TestAttribute), true).Length > 0;
无法访问TestAttribute
dll的正确版本?
其中method的类型为MethodInfo
。
答案 0 :(得分:4)
您可以获取所有属性并按名称过滤:
method.GetCustomAttributes(true)
.Where(a => a.GetType().FullName == "NUnit.Framework.TestAttribute");