In the previous post you have seen the difference between Build and Rebuild solution in Visual Studio and how things works under the hood. In the last section of the post we also talked about the project dependencies and the build order of the projects; which is dependent on project dependencies. In this post lets have a quick look how you can view the project dependency in Visual Studio.
To view the Project Dependencies, Right Click on the Solution and select “Project Dependencies…” as shown in the image below.
This will bring the “Project Dependency” dialog window where you can view the dependencies for the selected project. Select the project from the “Projects” dropdown to see the related dependent projects
As shown in the above pictures all the dependent projects are “Checked” .
There is another alternative way to get these details, right click on the solution in Solution Explorer, choose Property from the context menu, and then select Project Dependencies.
You can also visualize the dependency of projects using Code Map and I personally prefer this options. In this case, you don’t need to select individual projects from the dropdown to verify the dependency; as this provides a complete view of dependencies. The generated code map can display all the dependency references together.
Navigate to Architecture –> “Generate Code Map for Solution”
This will generated the nice dependency diagram for the projects. As shown in the below images, you can see how the projects / libraries are dependent on each other in a single view.
You can further explore to each nodes to get more inside of the each and individual elements of projects.
Hope this was useful.
I’ve used this feature, however it would be of great benefit if I could also map satellite dependencies also – that is not just the assembly references in my immediate solution but assembly dependencies in each of those referenced assemblies also, thereby building up a true overall picture of what runtime assemblies are required at the deployment stage. Now that *would* be useful. Ideas anyone (short of recursing through the dependency chain recursively myself)?
Pingback: Dew Drop – November 27, 2015 (#2140) | Morning Dew
Pingback: .NET Tips and Tricks – Back to Basic, Visual Studio and Application Insights – November 2015 Links | Abhijit's World of .NET