public Track GetRandomTrack() { IDataProvider fsProvider = DataProviders.Where(x => x.GetSourceType() == TrackSource.Cache).FirstOrDefault(); if (fsProvider != null) { Track track = (Track)(fsProvider.Search("").OrderBy(x => Guid.NewGuid()).FirstOrDefault()); return(track); } return(null); }