【问题标题】:nuger.server's FindPackagesById() is not returning pre-release packagesnuget.server FindPackagesById() 未返回预发布包
【发布时间】:2019-03-05 22:08:03
【问题描述】:

我正在尝试使用 FindPackagesById() Web 方法查询 nuget 服务器。但它不会返回软件包的预发布版本。我确信有办法做到这一点。任何帮助,将不胜感激。 ;0)

下面的示例是我运行搜索的方式

http://localhost/nuget/FindPackagesById()?id='NugetTestApp1'

【问题讨论】:

    标签: nuget nuget-server


    【解决方案1】:

    问题在于,为了让 FindPackagesById() 返回预发布包,我们必须将 semVerLevel 设置为 2.0.0。

    http://localhost/nuget/FindPackagesById()?id='NugetTestApp1'&semVerLevel=2.0.0
    

    【讨论】:

      【解决方案2】:

      V2 协议没有很好的文档记录(V3 协议适用于example),而这正是 NuGet.Server 所支持的。

      但是,有一个非官方的docs 努力为 V2。

      现在对 FindPackagesById 的支持可能因实现而异(例如,NuGet.org 不支持过滤器)。 我建议使用包端点,因为它是标准的 OData 集合,因此更容易针对它编写查询。

      例子

      http://localhost/nuget/Packages()?$filter=Id%20eq%20%27nuget.protocol%27%20and%20IsPrerelease%20eq%20true&$select=Id,Version

      【讨论】:

      • 我尝试运行您提供的查询,但它仍然没有返回任何预发布包。
      • 我提供的查询有 IsPrerelease=false。我的坏我已经修好了。你能再试一次吗?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-01-27
      • 1970-01-01
      • 2022-10-18
      • 1970-01-01
      • 2012-05-22
      • 2013-08-06
      • 2016-08-14
      相关资源
      最近更新 更多