Кто-нибудь знает, как получить атрибут Obsolete при использовании Linq?
Я делаю NDepend, но в любом случае я хочу сделать запрос и получить все устаревшие атрибуты из методов, которые должны быть «устаревшими».
Obsolete["I WANT THIS STRING"]
Кто-нибудь знает, как получить атрибут Obsolete при использовании Linq?
Я делаю NDepend, но в любом случае я хочу сделать запрос и получить все устаревшие атрибуты из методов, которые должны быть «устаревшими».
Obsolete["I WANT THIS STRING"]
Я считаю, что что-то вроде этого, что вы ищете
from type in YourAssembly
from p in type.GetProperties()
from m in type.GetMembers()
let propertyAttributes = p.GetCustomAttributes(true)
let methodAttributes = m.GetCustomAttributes(true)
where propertyAttributes.Any(a => a.GetType() == typeof(ObsoleteAttribute))
|| methodAttributes.Any(a => a.GetType() == typeof(ObsoleteAttribute))
select new type;
Он запрашивает все типы в сборке и выбирает те, у которых есть свойства или методы с атрибутом ObsoleteAttribute.