使用一个项目中Packages.config的内容在新项目中加载Nuget包

one*_*ill 1 nuget nuget-package nuget-package-restore

我有一种情况,我想创建一个新项目(在一个新的解决方案中),它将具有与现有项目完全相同的Nuget包.

我想找到一种方法,如果可能的话,利用我现有项目中的Packages.config文件将这些包下载到新的解决方案中.这个想法是为了让我不必为每个我想要安装的软件包运行Install Package等.

注意,我不是在谈论克隆存储库.在这种情况下,Nuget包恢复可以很好地工作.但是,如果我将Packages.config内容复制到新解决方案的Packages.config中,Nuget包还原不会关闭该配置文件中列出的包.

那么,是否有任何命令或一些我可以运行的命令,它将查看配置文件并继续加载这些包?

Mat*_*ard 7

packages.config文件指定已安装到项目中的NuGet包.如果你使用NuGet.exe restore solution.sln或者NuGet.exe install packages.config所有将要发生的是.nupkg文件将被下载.您的项目不会被修改,因此如果它在NuGet包中缺少对程序集的引用,那么它之后仍然会丢失它们.

但是,您可以使用Visual Studio执行的操作是:

  1. 使用packages.config文件打开项目
  2. 打开包管理器控制台
  3. 单击"程序包管理器控制台"窗口顶部显示的"还原"按钮,将文件下载到packages目录中.
  4. update-package -reinstall在"包管理器控制台"窗口中运行该命令.

步骤4.将导致Visual Studio和NuGet将引用添加回项目.该Update-Package -reinstall命令卸载然后将NuGet包重新安装回项目中,保留packages.config文件中指定的版本.