Сборка CQL в NDepend для проверки шаблонов MVVM
Я хотел проверить несколько шаблонов проектирования в коде C# с помощью статического анализа. Я хочу проверить это с помощью NDepend. Приложение построено с использованием стиля проектирования MVVM, поэтому я хотел бы проверить следующие типичные шаблоны проектирования: 1. Классы View-Model не имеют каких-либо свойств DependencyProperties (WPF), их следует видеть только в слое View. 2. Уровень просмотра не должен реализовывать IDisposable и т. Д.
Я пытался создавать запросы в CQL для захвата этих деталей, но не смог, так как мне нужно проверить, к какому уровню принадлежит класс, а также его свойства. Я понимаю, что вложенный запрос еще не поддерживается CQL, так есть ли способ, которым я могу зафиксировать эти детали с помощью NDepend? Я надеюсь, что смогу каким-то образом захватить результаты нескольких запросов и выполнить их пересечение?
Спасибо заранее, Шон
1 ответ
Самый простой способ получить правило CQLinq, которое предупреждает, если A использует B (A и B могут быть Assembly / Namespace / Type / Method / Field), это просмотреть A и B в Матрице зависимостей и сгенерировать правило кода, которое предупреждает если эта зависимость существует:
... и в результате генерируется следующее правило: