我正在尝试自动添加NuGet包,以便在没有安装Visual Studio(也没有安装任何构建服务器)的远程服务器上进行投影。我知道如何从我的C#代码中使用NuGet.exe,但是这个可执行文件只下载包,不做任何其他必需的工作(添加引用,执行ps脚本等)。我该怎么办才能完全安装包?
注意:我不需要为自己的应用更新软件包,我需要将软件包添加到服务器上的任意.csproj文件中。我正在构建一个基于Web的.Net IDE,并且需要我的用户能够将软件包添加到他们的项目中。
我看到两种可能性:一种是使用NuGet.exe中不存在的某种功能,而是使用其他一些库(可能是VS插件),但我不知道在哪里寻找它。另一种是模拟某种NuGet Powershell控制台并向其发送命令,但同样,我不知道该怎么做。
答案 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 FAQ。