private void ExportScrobbles_Click(object sender, EventArgs e) { DateTime from = startDate.Value; DateTime unixTimeZero = new DateTime(1970, 1, 1, 0, 0, 0); string fromTime = (from - unixTimeZero).TotalSeconds.ToString(); List <LastFMLib.GetRecentTracks.Track> recentTracks = lastFM.getRecentTracks(userBox.Text, fromTime); List <LastFMLib.GetRecentTracks.Track> uniqueTracks = new List <LastFMLib.GetRecentTracks.Track>(); foreach (LastFMLib.GetRecentTracks.Track t in recentTracks) { LastFMLib.GetRecentTracks.Track ut = uniqueTracks.Find(TrackName(t)); if (ut != null) { ut.playCount += 1; } else { t.playCount = 1; uniqueTracks.Add(t); } } foreach (LastFMLib.GetRecentTracks.Track t in uniqueTracks) { wmp.incrementTrackPlaycount(t.name, t.album.text, t.artist.text, t.playCount); } }
static Predicate <LastFMLib.GetRecentTracks.Track> TrackName(LastFMLib.GetRecentTracks.Track track) { return(delegate(LastFMLib.GetRecentTracks.Track t) { return (t.name == track.name) && (t.artist.text == track.artist.text) && (t.album.text == track.album.text); }); }