public IEnumerable<Audio> GetInstantMixFromPlaylist(Playlist item, User user) { var genres = item .GetRecursiveChildren(user, i => i is Audio) .Cast<Audio>() .SelectMany(i => i.Genres) .Concat(item.Genres) .DistinctNames(); return GetInstantMixFromGenres(genres, user); }
public IEnumerable<Audio> GetInstantMixFromPlaylist(Playlist item, User user) { var genres = item .GetRecursiveChildren(user, true) .OfType<Audio>() .SelectMany(i => i.Genres) .Concat(item.Genres) .Distinct(StringComparer.OrdinalIgnoreCase); return GetInstantMixFromGenres(genres, user); }
public IEnumerable<Audio> GetInstantMixFromPlaylist(Playlist item, User user) { var genres = item .GetRecursiveChildren(user, new InternalItemsQuery(user) { IncludeItemTypes = new[] { typeof(Audio).Name } }) .Cast<Audio>() .SelectMany(i => i.Genres) .Concat(item.Genres) .DistinctNames(); return GetInstantMixFromGenres(genres, user); }