static void Playlist_OnPLItemsDelete(shared.Playlist cPL, shared.Effect[] aEffects) { try { EffectCover cEffectCover = null; lock (_ahEffects) { if (_ahEffects.ContainsKey(cPL)) cEffectCover = _ahEffects[cPL]; else throw new Exception("playlist:items_delete: отсутствует указанный объект плейлиста [hc:" + cPL.GetHashCode() + "]"); } int[] aIDs = _ahEffects.Where(o => aEffects.Contains(o.Key)).Select(o => o.Value.oEffect.GetHashCode()).ToArray(); ((BTL.Play.Playlist)cEffectCover.oEffect).PLItemsDelete(aIDs); } catch (Exception ex) { (new Logger()).WriteError(ex); } }