Как построить граф зависимостей в большой кодовой базе решений VISUALSTUDIO - PullRequest
0 голосов
/ 04 апреля 2019

У меня есть задача построить высокоуровневый граф зависимостей, изучив кодовую базу, созданную примерно 100 решениями, созданными в VS2012, VS2015, VS2017.

Интересно, как максимально автоматизировать сбор информации из кодовой базы, отвечая на вопросы вроде:

  • Какие решения относятся к конкретному проекту?
  • На какие компоненты (внутренние проекты, внешние проекты, пакеты, сборки) ссылается какое-либо решение?

В VS2017 я могу использовать функциональность CodeMap в одном решении, мне интересно, как это сделать в более широком масштабе


Типичное решение может:

  • включает проекты, находящиеся в других решениях
  • включает пакеты с внутреннего сервера Nuget

В то время как типичный проект может:

  • справочные сборки (dll), опубликованные в общих каталогах
  • ссылка на веб-сервис

Пример реальной организации кодовой базы решений:

  • РЕШЕНИЕ A

    • ПРОЕКТ А1
      • ССЫЛКА R1
      • WEBSERVICE WS1
    • ПРОЕКТ A2
    • ПРОЕКТ B1
    • ПАКЕТ P1
  • РЕШЕНИЕ B

    • ПРОЕКТ B1
    • ПРОЕКТ B2
  • РЕШЕНИЕ WS

    • WEBSERVICE WS1
  • РЕШЕНИЕ P -> ДЕПОЛОГИ НА ПАКЕТЕ NUGET P1

  • РЕШЕНИЕ R -> ЗАВЕРШЕНИЕ ОБЩЕЙ СБОРКИ ДИРЕКТОРОВ R1

  • NUGET SERVER

    • ПАКЕТ P1
    • ПАКЕТ P2
  • ОБЩИЙ КАТАЛОГ

    • СБОРКА R1
    • СБОРКА R2
...