Подтвердить что ты не робот

Visual studio 2010: график зависимости

У меня есть профессиональное издание VS 2010. Что я могу сделать, чтобы использовать "График зависимости". У меня нет "архитектурного" издания. Есть бесплатный плагин, который я мог бы использовать. Если нет, есть ли какие-либо бесплатные сторонние инструменты, которые могли бы помочь мне сделать то же самое.

Спасибо

4b9b3361

Ответ 2

Мне было что-то похожее, но я не хотел платить (или устанавливать) инструмент для этого. я создал быстрый 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

Ответ 3

http://dependencyvisualizer.codeplex.com/ может помочь. Вы не сказали, если вам нужно что-то, что выходит за рамки зависимостей на уровне проекта.

Ответ 5

Инструмент NDepend выполняет как график зависимости, так и матрицу зависимостей (объективно на 100 раз быстрее, чем график VS2010), но он не является бесплатным.

Однако вы можете загрузить и использовать бесплатную пробную версию некоторое время. И если вы работаете над проектом OSS, свяжитесь с нами, и мы будем рады спонсировать ваш проект OSS со свободной лицензией (я являюсь частью команды инструментов):

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

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