Visual Studio 无法从 Azure Artifcats Feed 还原包

问题描述

我在 Azure Artifcats Feed 上发布了一个库。我可以使用 Visual Studio NuGet 包管理器手动安装此 dll。但是使用 NuGet.config,我无法自动安装该软件包。选中“允许 NuGet 下载丢失的包”。发布库的文件夹结构是这样的:

lib/
  net40/my_libr.dll
  my_lib.dll

我的 nuget.config 是:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <!-- remove any machine-wide sources with <clear/> -->
    <clear />
    <!-- add an Azure Artifacts Feed -->
    <add key="CCC-Feed" value="https://pkgs.dev.azure.com/<org>/_packaging/<Feed>/nuget/v3/index.json" />
    <!-- also get packages from the NuGet gallery -->
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
  </packageSources>
</configuration>

我尝试使用此库的项目的目标是 net40。我做错了什么吗?

EDIT1 我的解决方案有两个项目:一个是使用net35,另一个是使用net40。我试图将库安装到项目 net40 中

EDIT2 包被安装并放在根文件夹中的包文件夹中(除了 .sln 文件)。但是dll没有放在bin文件夹中。

EDIT3 这个项目最初是使用visual studio 2013创建的

解决方法

您可以尝试删除所有包和 NuGet.config 文件,然后使用 NuGet Package Manager 安装包。安装包时,NuGet 会在项目文件或 packages.config 文件(取决于项目格式)中记录依赖项。

  1. 解决方案资源管理器中,右键单击引用或项目,然后选择管理 NuGet 包..

    enter image description here

  2. 确保您已在 NuGet 包管理器设置中添加了包源(Azure Artifcats 源)。

    enter image description here

  3. 选择软件包并安装。

    enter image description here

有用的链接:

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...