在没有Visual Studio的情况下将NuGet包添加到项目中

时间:2013-11-01 12:27:56

标签: c# powershell nuget

我正在尝试自动添加NuGet包,以便在没有安装Visual Studio(也没有安装任何构建服务器)的远程服务器上进行投影。我知道如何从我的C#代码中使用NuGet.exe,但是这个可执行文件只下载包,不做任何其他必需的工作(添加引用,执行ps脚本等)。我该怎么办才能完全安装包?

注意:我不需要为自己的应用更新软件包,我需要将软件包添加到服务器上的任意.csproj文件中。我正在构建一个基于Web的.Net IDE,并且需要我的用户能够将软件包添加到他们的项目中。

我看到两种可能性:一种是使用NuGet.exe中不存在的某种功能,而是使用其他一些库(可能是VS插件),但我不知道在哪里寻找它。另一种是模拟某种NuGet Powershell控制台并向其发送命令,但同样,我不知道该怎么做。

2 个答案:

答案 0 :(得分:1)

您可能需要考虑SharpDevelop

Installing NuGet Packages outside of Visual Studio一篇关于你想要实现的功能的文章(由项目贡献者之一Matt Ward编写)说:

  

由于NuGet使用PowerShell,最简单的方法是扩展   SharpDevelop附带的现有PowerShell cmdlet。现在你可以   编写几行PowerShell脚本来安装NuGet包   项目之前从未有过NuGet包的项目   本身已更新,任何包PowerShell脚本都会运行。这一切都来自   没有Visual Studio打开的命令行。

答案 1 :(得分:0)

为了在Alex关于SharpDevelop的帖子中添加一个额外的答案,你有几个不同的选择。

  • 使用Nuget.exe(Related Blog post
  • MonoDevelop和Xamarin Studio的NuGet Addin(见GitHub
  • 使用WebMatrix的ASP.NET页面(请参阅此video

所有这些信息均来自Nuget FAQ