Как вы отображаете отношения, которые соединяют ClassA с ClassX, используя NDepend?

ФОН

При въезде в неизвестный город часто желательно иметь карту, которая поможет вам добраться до пункта назначения. Точно так же, когда вы смотрите на унаследованный код в первый раз, часто предпочтительнее иметь диаграмму, которая может очертить отношения в приложении.

ПРИМЕР

В этом случае меня попросили взглянуть на унаследованное приложение, ориентированное на данные, чтобы лучше понять, как оно управляет соединениями с базой данных. Или, более конкретно, я пытаюсь сгенерировать диаграмму классов, которая описывает отношения между Program а также System.Data.Common.DbConnection,

ЭТА ПРОБЛЕМА

Я относительно новичок в NDepend, и мне трудно написать соответствующий оператор CQLinq. К сожалению, следующее показывает только сборки и их отношения друг с другом. Как бы я изменил этот запрос для отображения отношений между двумя типами?

Любая информация, которую вы можете предоставить, будет принята с благодарностью!

from t in Assemblies
where t.DepthOfIsUsedBy("MyCompany.MyProject.MyNamespace.Program") >=0 &&
t.DepthOfIsUsing("System.Data.Common.DbConnection") >=0
select new { t, t.NbLinesOfCode}

1 ответ

Решение

from t in Assemblies означает, что т является сборкой.

Тебе стоит попробовать from t in Application.Types:

// <Name>Display relationships between two types</Name>
from t in Application.Types
where t.DepthOfIsUsedBy("Company.Project.NamespaceA") >=0 &&
t.DepthOfIsUsing("Company.Project.NamespaceZ") >=0
select new { t, t.NbLinesOfCode}
Другие вопросы по тегам