1

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

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

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

4

2 回答 2

1

您可能需要考虑SharpDevelop

在 Visual Studio 之外安装 NuGet 包一篇关于您尝试实现的功能的文章(由项目贡献者之一 Matt Ward 撰写)说:

由于 NuGet 使用 PowerShell,因此最简单的方法是扩展 SharpDevelop 中包含的现有 PowerShell cmdlet。现在,您可以编写几行 PowerShell 脚本来将 NuGet 包安装到以前从未有过 NuGet 包的项目中,更新项目本身并运行任何包 PowerShell 脚本。所有这一切都来自没有打开 Visual Studio 的命令行。

于 2013-11-01T13:37:58.647 回答
0

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

  • 使用 Nuget.exe(相关博客文章
  • 用于 MonoDevelop 和 Xamarin Studio 的 NuGet 插件(请参阅GitHub
  • 使用 WebMatrix 的 ASP.NET 页面(请参阅此视频

所有这些信息都来自Nuget 常见问题解答

于 2013-11-01T14:08:24.860 回答