NDepend не возвращает типы, используемые в атрибутах - PullRequest
0 голосов
/ 07 ноября 2019

Рассмотрим следующий код:

namespace ConsoleApp1
{
    class MyConsts
    {
        public const string Const1 = "const";
    }

    class MyAttr : Attribute
    {
        public string Prop { get; set; }
    }

    class MyClass
    {
        [MyAttr(Prop = MyConsts.Const1)]
        public int Id { get; set; }
    }
}

Я пишу запрос NDepend:

from t in Types 
let depth0 = t.DepthOfIsUsedBy("ConsoleApp1.MyClass")
where depth0  >= 0 orderby depth0
select new { t, depth0 }

Я ожидаю, что NDepend вернет все типы, используемые MyClass (прямо и косвенно). К сожалению, NDepend не возвращает класс MyConsts, который используется throw [MyAttr (Prop = MyConsts.Const1)].

Есть ли обходной путь для получения всех используемых типов, включая типы, используемые в атрибутах?

...