首页 > 解决方案 > 从 VSTS 添加对 Visual Studio Code 的引用

问题描述

我有一个私有包存储在 VSTS(Visual Studio 团队服务)的提要中。我想将它添加到我在 Visual Studio Code 中开发的 .NET Core 项目中。

检查 VSTS 文档,要从私有源添加包,必须使用 NuGet CLI,因为 .NET 不支持私有存储库(或者至少我认为是这样,因为 Microsoft 建议我们改用 NuGet CLI)。

使用 NuGet CLI,添加包的命令是 NuGet install。但它会下载所有包,包括 .nupck、DLL 文件、大型文件等……(即各种 XML 文件)。而且它不会向项目添加必要的引用。使用 .NET CLI 添加包,它会在 .csproj 文件(项目文件)中添加引用,并且照常工作。

是否有一个命令可以重现完全相同的行为,例如我们在 Visual Studio 上添加包,或使用 .NET 添加包 CLI 的 Visual Code?

如果没有,我该怎么办?我应该提取 DLL 文件并在 .csproj 文件中手动引用它吗?如果有任何更新,我怎么知道它(在 Visual Studio 中,NuGet UI 显示更新,但在 Visual Studio Code 中,手动添加引用后......)

标签: visual-studio-codenugetazure-devopspackagesdotnet-cli

解决方案


无法通过 Visual Studio Code 或 NuGet CLI 将 NuGet 包添加到项目中。

对于命令nuget install(与 功能相同nuget restore),它仅从指定的提要下载 NuGet 包,但不会对项目进行任何更改。您还可以参考文章如何在命令行上将 NuGet 包安装到 Visual Studio 项目

将 NuGet 包添加到项目的解决方法如下:

  1. 在 Visual Studio 中添加包

    你可以在 Visual Studio 中打开你的项目,然后通过 Visual Studio 添加 NuGet 包。

  2. 手动更改项目文件

    如果您尚未安装 Visual Studio。您也可以手动更改相关文件。

    例如将私人提要添加到nuget.config文件中,然后.csproj使用以下行更改文件:

    <ItemGroup>
      <PackageReference Include="xxx" Version="xxx" />
    </ItemGroup>
    
  3. dotnet add package通过命令添加包

    您还可以使用dotnet add package命令将 NuGet 包添加到您的项目中:

    dotnet add [<PROJECT>] package <PACKAGE_NAME>  [-v|--version]
    

推荐阅读