nuger.server的FindPackagesById()不返回预发行包

时间:2019-03-05 22:08:04

标签: nuget nuget-server

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

下面的示例是我如何运行搜索

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

2 个答案:

答案 0 :(得分:0)

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

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

答案 1 :(得分:0)

该V2协议的文档记录不充分(V3协议用于example),这就是NuGet.Server支持的功能。

但是,V2进行了非正式的docs工作。

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

示例

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