Ndepend найти фактическое количество методов использования
Допустим, у меня есть метод A.M1
, Это называется в B.M2
2 раза и в B.M3
три раза. Мне нужно найти все количество использований (как Resharper делает через интерфейс поиска использований). Таким образом, сумма для вызовов метода будет 5.
Следующий запрос:
from m in Methods
where m.HasAttribute("specific attribute")
orderby m.MethodsCallingMe.Count() descending
select new { m, m.MethodsCallingMe }
дает мне только 2 использования для метода A.M1.
Не могли бы вы помочь мне найти номер использования?
1 ответ
Это сложно или невозможно сделать с помощью NDepend. NDepends показывает, какие методы вызывают указанный метод и не учитывают их в этой ситуации и даже не подсчитывают их рекурсивно или через граф вызовов.
Поэтому попробуйте использовать другие методы. Прежде всего, зачем вам такая метрика? Какой-то метод ранга?
В любом случае, довольно простой способ добиться этого - использовать эксперимент RegEx. Вы можете также использовать NDepend API или regex и ndepend api вместе. Например, получить все имена методов из базы исходного кода с помощью API nDepend, а затем использовать регулярное выражение для каждого совпадения количества имен методов, кроме самого определения метода.