public void AddTrack(Entities.Track t)
 {
     var existing = (from trk in _tracks where trk.SourceFile == t.SourceFile && trk.Name == t.Name && trk.TrackDate == t.TrackDate select t).FirstOrDefault();
     if (existing == null)
     {
         t.TrackID = ++_maxId;
         t.SetDataLoader(this);
         _tracks.Add(t);
         SaveData(t);
     }
     if (!File.Exists(GetTrackFilename(t)))
         File.WriteAllText(GetTrackFilename(t), t.Data);
 }