NuGet包浏览:如何查看按下载次数排序的包(降序)

时间:2018-05-10 09:04:40

标签: visual-studio nuget

上下文

我经常在VS 2017中使用NuGet包UI,并过滤关键字,例如' Benchmark'。然后我的下一步行动是按下载次数对结果列表进行排序,但遗憾的是不可能。 (这将是一个伟大的生产力工具)

问题

找到一个快速选择最快下载的软件包然后添加到我的解决方案或项目中的最无缝方法是什么?

2 个答案:

答案 0 :(得分:2)

  

找到一个快速选择最快下载的软件包然后添加到我的解决方案或项目中的最无缝方法是什么?

此时此刻恐怕没有办法通过大多数下载次数找到nuget包排序。

根据文件Finding and evaluating NuGet packages for your project

  

当您访问nuget.org或在Visual中打开Package Manager UI时   Studio,您会看到按总下载量排序的软件包列表。这个   立即向您展示最广泛使用的包   数以百万计的.NET项目。

     

针对特定需求,按标签搜索(在Visual Studio中搜索)   软件包管理器或像nuget.org这样的门户网站是最常见的   发现合适包装的方法。

     

目前,搜索结果仅按相关性排序

因此,当我们通过Package Manager UI搜索一个nuget包时,搜索结果仅按相关性进行排序。这是由NuGet设计的。

此外,许多其他社区成员向Visual Studio团队提交用户语音Manage Nuget Packages default sort order。您投票并添加您对此语音的评论,当有足够的社区投票并为此反馈添加评论时,产品团队成员将认真对待此反馈。

希望得到这个帮助。

答案 1 :(得分:1)

我将这个小PowerShell脚本保留在桌面上。它不会为您的项目添加任何内容,但这是一种搜索下载内容并对其进行排序的快速方法。

param (
    [Parameter(Mandatory=$true, Position=0)]
    [string]
    $query
)

$RawPkgs = Find-Package $query -ProviderName NuGet -Source nuget.org
Write-Output "Found $($RawPkgs.Count) results"
$PkgList = @()

foreach($pkg in $RawPkgs) {
    $data = [PSCustomObject]@{
        Name = $pkg.Name
        Summary = $pkg.Summary
        Downloads = [int]$pkg.Meta.Attributes['downloadCount']
    }
    $PkgList += $data
}

$PkgList | Sort-Object { $_.Downloads } -Descending | Format-Table Name, Downloads, Summary -AutoSize