График зависимости проектов Visual Studio

В настоящее время я переношу большое решение (~ 70 проектов) из VS 2005 +.NET 2.0 в VS 2008 +.NET 3.5. В настоящее время у меня есть VS 2008 +.NET 2.0.

Проблема в том, что мне нужно переместить проекты по очереди в новую платформу .NET, чтобы проект .NET 2.0 не ссылался на проект .NET 3.5. Есть ли какой-нибудь инструмент, который бы дал мне хороший график зависимостей проекта?

+101
28 февр. '09 в 15:08
источник поделиться
13 ответов

Вы пробовали NDepend? Он покажет вам зависимости, и вы также сможете проанализировать удобство использования ваших классов и методов.

Их веб-сайт:

http://ndepend.com

+35
28 февр. '09 в 15:12
источник

Связанные вопросы


Похожие вопросы

Мне было что-то похожее, но я не хотел платить (или устанавливать) инструмент для этого. я создал быстрый PowerShell script, который проходит через ссылки на проект и выплевывает их в yuml.me дружественный формат:

Function Get-ProjectReferences ($rootFolder)
{
    $projectFiles = Get-ChildItem $rootFolder -Filter *.csproj -Recurse
    $ns = @{ defaultNamespace = "http://schemas.microsoft.com/developer/msbuild/2003" }

    $projectFiles | ForEach-Object {
        $projectFile = $_ | Select-Object -ExpandProperty FullName
        $projectName = $_ | Select-Object -ExpandProperty BaseName
        $projectXml = [xml](Get-Content $projectFile)

        $projectReferences = $projectXml | Select-Xml '//defaultNamespace:ProjectReference/defaultNamespace:Name' -Namespace $ns | Select-Object -ExpandProperty Node | Select-Object -ExpandProperty "#text"

        $projectReferences | ForEach-Object {
            "[" + $projectName + "] -> [" + $_ + "]"
        }
    }
}

Get-ProjectReferences "C:\Users\DanTup\Documents\MyProject" | Out-File "C:\Users\DanTup\Documents\MyProject\References.txt"

Sample Graph

+132
06 мая '12 в 16:52
источник

Обновление: ReSharper с версии 8 имеет встроенную функцию 'Просмотр зависимостей проекта.

Версия ReSharper < 8 имеет Внутренняя функция, чтобы отображать графики зависимостей при использовании программы просмотра yFiles. См. Краткое руководство в нижней части сообщения.

enter image description here

Howto

  • Установите инструмент yEd из здесь.
  • Запустите VS с аргументом командной строки /resharper.internal.
  • Перейдите в ReSharper/Internal/Show Dependencies.
  • Укажите проекты, которые вы хотите включить в "общую картинку".
  • Снимите флажок "Исключить конечные узлы...", если вам это не нужно.
  • Нажмите "Показать".
  • Используйте иерархический макет в yEd (Alt + Shift + H)
  • Обеспечить обратную связь =)
+58
13 мар. '13 в 12:34
источник

Вы можете легко получить графический график зависимостей проекта, используя Visual Studio 2010 Ultimate, сканирование до 5 минут на это видео, чтобы увидеть, как: http://www.lovettsoftware.com/blogengine.net/post/2010/05/27/Architecture-Explorer.aspx

В Visual Studio 2010 Ultimate: Архитектура | Создать график зависимости | Сборка.

+30
30 июл. '10 в 20:53
источник

Я написал инструмент, который может вам помочь. VS Solution Dependency Visualizer анализирует зависимости проектов в рамках решения и создает диаграмму зависимостей из этой информации, а также текстовый отчет.

+17
25 мар. '11 в 7:35
источник

Вы можете создать граф зависимостей ваших проектов в VS 2010 Ultimate. Проводник Architecture позволяет просматривать ваше решение, выбирать проекты и отношения, которые вы хотите визуализировать, а затем создавать граф зависимости из вашего выбора.

Для получения дополнительной информации см. следующие темы:

Как создать графические документы из кода: http://msdn.microsoft.com/en-us/library/dd409453%28VS.100%29.aspx#SeeSpecificSource

Как найти код с помощью проводника архитектуры Архитектура: http://msdn.microsoft.com/en-us/library/dd409431%28VS.100%29.aspx

Загрузка RC: http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=457bab91-5eb2-4b36-b0f4-d6f34683c62a.

Visual Studio 2010 Архитектурное средство обнаружения и моделирования: http://social.msdn.microsoft.com/Forums/en-US/vsarch/threads

+8
18 февр. '10 в 23:51
источник

У меня была похожая проблема, но она была еще более сложной, потому что несколько проектов ссылались на разные версии одной и той же сборки.

Чтобы получить вывод, включающий информацию о версии и проверки на возможные проблемы с загрузкой сборки во время выполнения, я сделал этот инструмент:

https://github.com/smpickett/DependencyViewer

(прямая ссылка на релиз github: https://github.com/smpickett/DependencyViewer/releases)

+7
13 февр. '15 в 2:42
источник

Чтобы завершить ответ ericwan на графиках, созданных NDepend, см. скриншоты ниже. Вы можете загрузить и использовать бесплатную пробную версию NDepend на некоторое время.

Подробнее о графике зависимости NDepend enter image description here

Подробнее о матрице зависимостей NDepend: enter image description here

Отказ от ответственности: я являюсь частью команды инструментов

+5
06 сент. '10 в 13:55
источник

Если вам просто нужен граф зависимостей, который я нашел, это один из самых чистых способов его получения:

Анализатор зависимостей

+3
12 окт. '09 в 11:00
источник

Вы можете создать хороший график ссылок в ваших проектах. Я описал способ, которым я это сделал в своем блоге http://www.mellekoning.nl/index.php/2010/03/11/project-references-in-ddd/

+3
11 мар. '10 в 21:33
источник

Лучшее решение Powershell. Я адаптировал его в bash script, который работает на моей машине (TM):

#!/bin/bash

for i in `find . -type f -iname "*.csproj"`; do
    # get only filename
    project=`basename $i`

    # remove csproj extension
    project=${project%.csproj}

    references=`cat $i | grep '<ProjectReference' | cut -d "\"" -f 2`
    for ref in $references; do
        # keep only filename (assume Windows paths)
        ref=${ref##*\\}

        # remove csproj extension
        ref=${ref%.csproj}

        echo "[ $project ] -> [ $ref ]"
    done

done
+2
30 мая '15 в 5:36
источник

Я создал небольшой проект С#, используя YUML в качестве вывода.. код можно найти здесь:

https://github.com/twistedtwig/DotnetProjectDependencyGraphs

+2
23 сент. '14 в 13:00
источник

Я проверил все ответы, но ни один из вариантов не удовлетворил меня, поэтому я написал свой собственный инструмент для предварительного просмотра зависимостей проекта.

https://github.com/Audionysos/VSProjectReferencesViewer

Это ранняя стадия, но это сработало для моих нужд :)

0
15 янв. '19 в 21:06
источник

Посмотрите другие вопросы по меткам или Задайте вопрос