首页 > 解决方案 > 如何获取具有特定 nuget 包作为参考的项目

问题描述

我的 .NET 解决方案中有大约 100 个项目。我设法使用一个简单的命令通过包管理器控制台获取项目中使用的所有 nuget 包。

我有大约 100 个 Nuget 包。现在,对于每个 nuget 包,我都希望将其作为参考的项目。即假设我有三个项目A、B 和C,并且我有Nuget 包假设nHibernate。

当我手动转到每个项目的引用部分时,我看到 nHibernate 在项目 A 和项目 B 中被引用。所以我对该包的依赖项目是 A 和 B。

像这样,我想要所有的 nuget 包。我怎么能在没有任何手动任务的情况下做到这一点。就像我可以使用任何命令或方式一样。

标签: c#.netnugetnuget-package

解决方案


如果您使用的是 Visual Studio Enterprise,您将安装 Microsoft 架构图和分析工具。

  1. 从顶部菜单栏中选择Architecture然后选择Generate Code Map For Solution

在此处输入图像描述

  1. 展开Externals

在此处输入图像描述

  1. 从外部列表中选择您的包并右键单击它并选择New Graph From Selection

在此处输入图像描述

  1. 将打开一个新图表。再次右键单击包并选择Show Assemblies Referencing This

在此处输入图像描述

  1. 您将获得一个代码图,其中显示了引用该包的程序集。您现在可以将此代码图与包名称一起保存在单独的文件夹中以供以后使用。

在此处输入图像描述

您也可以对多个包执行此操作,以查看您选择的所有包的所有依赖项。在第 3 步中,只需按下 CTRL 选择多个包,然后按照相同的步骤操作。


推荐阅读