mirror of https://github.com/lidarr/Lidarr
New: Improve All Artits call by using dictionary for stats iteration
(cherry picked from commit e792db4d3355fedd3ea9e35b3f5e1e30394d9ee3) Closes #4480
This commit is contained in:
parent
ba4b93b611
commit
82d9228ee9
|
@ -145,7 +145,7 @@ namespace Lidarr.Api.V1.Artist
|
|||
|
||||
MapCoversToLocal(artistsResources.ToArray());
|
||||
LinkNextPreviousAlbums(artistsResources.ToArray());
|
||||
LinkArtistStatistics(artistsResources, artistStats);
|
||||
LinkArtistStatistics(artistsResources, artistStats.ToDictionary(x => x.ArtistId));
|
||||
artistsResources.ForEach(LinkRootFolderPath);
|
||||
|
||||
// PopulateAlternateTitles(seriesResources);
|
||||
|
@ -219,19 +219,16 @@ namespace Lidarr.Api.V1.Artist
|
|||
LinkArtistStatistics(resource, _artistStatisticsService.ArtistStatistics(resource.Id));
|
||||
}
|
||||
|
||||
private void LinkArtistStatistics(List<ArtistResource> resources, List<ArtistStatistics> artistStatistics)
|
||||
private void LinkArtistStatistics(List<ArtistResource> resources, Dictionary<int, ArtistStatistics> artistStatistics)
|
||||
{
|
||||
foreach (var artist in resources)
|
||||
{
|
||||
var stats = artistStatistics.SingleOrDefault(ss => ss.ArtistId == artist.Id);
|
||||
if (stats == null)
|
||||
if (artistStatistics.TryGetValue(artist.Id, out var stats))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
LinkArtistStatistics(artist, stats);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void LinkArtistStatistics(ArtistResource resource, ArtistStatistics artistStatistics)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue