在VS2012中添加NuGet包作为项目引用的最佳方法?

Nin*_*ils 60 nuget visual-studio-2012

好.真的很快问题,我可能只是很厚.

如果右键单击项目的"references"文件夹,然后"管理NuGet包",则可以安装包,它们会被您单击的项目自动引用.但后来我想在同一个解决方案中为其他项目添加相同的引用.如果您重复上一个但是单击另一个项目,唯一的选择是卸载软件包(因为它已经安装),将现有(已安装的)NuGet软件包添加为项目引用的正确方法是什么?我是使用普通对话框添加引用并"浏览"到packages文件夹中的dll吗?使用一种方法添加第一个引用然后添加另一个引用用于后续引用 这似乎不对.

Pav*_*shy 85

您可以使用Manage NuGet packages for Solution...:

  • 右键单击解决方案
  • Tools > Library Package Manager > Manage NuGet packages for Solution

然后您可以选择安装包的项目,如下面的屏幕截图所示: 在此输入图像描述 此外,您可以安装的软件包在溶液中使用同样添加到另一个项目Manage NuGet packages for Solution.... 在此输入图像描述


kri*_*anp 19

这里的另一个答案对我没有帮助.这就是我所做的,我不知道其他任何方式.我正在使用VS 2013.

  • 我在软件包管理器控制台中安装了软件包,例如 PM> Install-Package Newtonsoft.Json
  • 在Solution Explorer中,右键单击引用,选择Add Reference
  • 单击"浏览",然后导航到解决方案文件夹下的packages目录中的dll.

这为项目的引用添加了一个相对路径,因此它应该与其他人一起使用从源代码控制获取代码到不同的目录.

  • 这种方法存在一个问题:将来你想要更新这个软件包时,Nuget不会自动在你的项目中处理这个问题.因此,您将最终得到引用同一包的不同版本的不同项目.这将导致运行时异常.因此,最好通过Nuget包管理器添加引用,而不是手动添加引用. (3认同)