Comment puis-je créer un "diagramme d'arbre de dépendance" à partir de ma solution .NET

StackOverflow https://stackoverflow.com/questions/80287

  •  09-06-2019
  •  | 
  •  

Question

Je peux facilement voir quels projets et quelles dll un projet est référencé dans un projet Visual Studio .NET.

Existe-t-il une application ou une utilisation de la réflexion capable de générer un arbre de dépendance complet que je puisse utiliser pour tracer un graphique des dépendances?

Était-ce utile?

La solution

En plus de NDepend, vous pouvez aussi essayer ce complément pour Réflecteur pour afficher un graphique de dépendance d’assemblage.

Autres conseils

NDepend est livré avec un graphique de dépendance interactif associé à une matrice de dépendance. Vous pouvez télécharger et utiliser l'édition d'essai gratuite de NDepend pendant un certain temps.

Plus d'informations sur le graphe de dépendance NDepend entrer la description de l'image ici

Plus d'informations sur la matrice de dépendance NDepend : entrer la description de l'image ici

Avertissement: je fais partie de l'équipe des outils

J'avais besoin de quelque chose de similaire, mais je ne voulais pas payer (ou installer) un outil pour le faire. J'ai créé un script rapide PowerShell à travers les références de projet et les recrache au format 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 = 

J'avais besoin de quelque chose de similaire, mais je ne voulais pas payer (ou installer) un outil pour le faire. J'ai créé un script rapide PowerShell à travers les références de projet et les recrache au format yuml.me :

<*>

Exemple de graphique

| Select-Object -ExpandProperty FullName $projectName =

J'avais besoin de quelque chose de similaire, mais je ne voulais pas payer (ou installer) un outil pour le faire. J'ai créé un script rapide PowerShell à travers les références de projet et les recrache au format yuml.me :

<*>

Exemple de graphique

| 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 + "] -> [" +

J'avais besoin de quelque chose de similaire, mais je ne voulais pas payer (ou installer) un outil pour le faire. J'ai créé un script rapide PowerShell à travers les références de projet et les recrache au format yuml.me :

<*>

Exemple de graphique

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

Exemple de graphique

Vous pouvez créer un graphique de dépendance de projets et d'assemblys dans Visual Studio 2010 Ultimate en utilisant Architecture Explorer pour parcourir votre solution, sélectionner les projets et les relations à visualiser, puis créer un graphique de dépendance à partir de votre sélection.

Pour plus d'informations, consultez les rubriques suivantes:

Comment: générer des documents graphiques à partir du code : http://msdn.microsoft.com/en-us/library/dd409453%28VS.100%29.aspx#SeeSpecificSource

Comment: rechercher du code à l'aide d'Architecture Explorer : http://msdn.microsoft.com/en-us/library/dd409431%28VS.100%29.aspx

Téléchargement RC : http://www.microsoft.com/downloads/details.aspx?displaylang=fr&FamilyID=457bab91-5eb2-4b36-b0f4-d6f34683c62a .

Découverte architecturale Visual Studio 2010 & amp; Outils de modélisation : http: //social.msdn. microsoft.com/Forums/en-US/vsarch/threads

Structure101 peut le faire. Vous pouvez parcourir un modèle par assemblage et / ou espace de nom. En cliquant sur une dépendance à n'importe quel niveau, vous obtenez toutes les références au niveau du code qui sont à l'origine de la dépendance. La version .NET est en version bêta, mais elle est disponible dans d'autres langues depuis des années. Elle est donc très mature. Voici un exemple de capture d'écran. texte alt http://www.headwaysoftware.com/images/assemblies.jpg

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top