如何在C#项目中使用Windows命令行安装Nuget包?

8

我已经下载了 NuGet 版本-5.1.0 并尝试使用 cmd 安装其中一个包-log4net,但失败了。以下是错误提示:

Microsoft Windows [版本 10.0.19042.1348](c) Microsoft Corporation。 保留所有权利。

D:\Personal\ConsoleApplication1\ClassLibrary1>"D:\Personal\ConsoleApplication1\nuget_1\nuget.exe" install-package log4net 未知的命令:'install-package' NuGet.CommandLine.CommandLineException: 未知的命令: 'install-package' at NuGet.CommandLine.CommandManager.GetCommand(String commandName) at NuGet.CommandLine.CommandLineParser.ParseCommandLine(IEnumerable`1 commandLineArgs) at NuGet.CommandLine.Program.MainCore(String workingDirectory, String[] args)

D:\Personal\ConsoleApplication1\ClassLibrary1>

这里的 ClassLibrary1 是 C# 项目,在这个项目中需要添加 log4net 包。我不想使用 Visual Studio 中提供的 NuGet Package Manager Console 选项。

我写的命令是否正确?


Install-package我相信是特定于powershell命令的。请在发布问题之前在互联网上搜索一下。https://learn.microsoft.com/en-us/nuget/consume-packages/install-use-packages-nuget-cli#install-a-package - Jawad
1
请查看为什么在提问时不上传代码/错误的图片?。您能否编辑帖子以将命令和输出显示为文本? - ggorlen
3个回答

12

安装成功了,但如何使用命令行卸载包呢?我查看了这个链接 - https://learn.microsoft.com/en-us/nuget/consume-packages/install-use-packages-nuget-cli#remove-a-package,它只提到了还原和安装。 - SSD
3
安装命令不会将依赖项添加到 csproj 文件中,也不会影响 packages.config 文件,而是会创建一个单独的 packages 文件夹。为什么? - SSD

12

这就是为什么我搜索了谷歌并来到了这个页面。但是不起作用。该项目不支持通过添加包消息添加包。该怎么办?我使用Visual Studio 2012创建了这个项目。 - Md Ashraful Islam
@MdAshrafulIslam 对于这样一个旧项目,你必须在Visual Studio中使用NuGet。 - somethingRandom
我们可以切换目录以添加这个包吗?如何在C#中切换目录? - Karthic G
@KarthicG,“dotnet add package”命令所做的只是在项目的“.csproj”中添加对包的引用;该命令不会添加任何文件,甚至不会下载包。你需要使用其他工具来完成这个任务。 - somethingRandom

3

有三种官方的方式可以在解决方案中安装 NuGet 包。

enter image description here

  1. 使用包管理器控制台;它包含在 Visual Studio IDE 中(目前仅支持 Windows 平台),或从 NuGet Gallery 安装 NuGet 命令行工具。您可以将需要的 NuGet 包复制并粘贴到 IDE 的包管理器控制台中,其以 "Install-Package" 开头,或者在命令行中使用 "nuget install"。这将在 csproj 中添加 packagereference。

  2. 使用 .NET CLI;您需要安装与 .NET SDK 一起安装的 .NET 命令行工具。因此,您只需将其复制并粘贴到命令行或 bash 或终端中即可。这适用于 Linux、Windows 和 Mac 操作系统。这将最终在 csproj 文件中添加包引用。

  3. 使用 PackageReference;您可以直接将引用复制并粘贴到 csproj 文件中。

  4. 使用 Paket CLI,也是另一种我从未使用过的 CLI。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接