private Song GetRandomSong() { var artists = Subsonic.GetArtistIndexes(); var artistKey = artists.Values.OrderBy(r => randomLazy.Next()).FirstOrDefault(); var albumKey = Subsonic.GetAlbumIds(artistKey); var songs = GetSongIds(albumKey.OrderBy(rd => randomLazy.Next()).FirstOrDefault()); return(songs.OrderBy(r => randomLazy.Next()).FirstOrDefault(sng => sng != null)); }