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, а затем использовать регулярное выражение для каждого совпадения количества имен методов, кроме самого определения метода.

Другие вопросы по тегам