|
How NDepend is resolving assemblies
Since NDepend v2019.1 the NDepend project file can also reference one or several Visual Studio solution(s) and project(s) from which some .NET Application Assemblies to analyze are resolved.
The resolution of these assemblies is not concerned with the heuristic explained below since they are resolved from VS solution(s) and project(s) files referenced.
Note that the set of applications assemblies analyzed is the union of those Visual Studio solution(s) assemblies (4 dlls in the screenshot below), and assemblies referenced by name (only one executable in the screenshot below). ![]() The NDepend project file (.ndproj extension) contains 2 lists of assembly names (case insensitive, without extension .dll .exe)
The NDepend project also contains a list of directories. To resolve assemblies, NDepend attempts to locate assemblies by name in the directories. ![]()
This list of directories also contain .NET Fx directories like
C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319
to resolve third-party .NET Fx assemblies referenced by your Application assemblies. ![]()
Since NDepend v2017.3, the .NET Core profile is supported and also NuGet directories are automatically resolved. ![]() If several assemblies with the same name are found in several directories, here is the heuristic used to resolve the assembly to analyze:
If you are using the NDepend.API to create a program that builds NDepend projects, see the interface NDepend.Project.IProjectCodeToAnalyze. |