internal void Reuse() { //Can be updated by application so refill the lists Result = null; _idBlockFun = _magicDatabase.GetAllBlocks().Where(b => b.Name.IndexOf("Fun", StringComparison.InvariantCultureIgnoreCase) >= 0).Select(b => b.Id).First(); _idBlockOnlineOnly = _magicDatabase.GetAllBlocks().Where(b => b.Name.IndexOf("OnlineOnly", StringComparison.InvariantCultureIgnoreCase) >= 0).Select(b => b.Id).First(); Editions = _magicDatabase.GetAllEditionsOrdered(); Collections = _magicDatabase.GetAllCollections(); IEdition[] editions = EditionsSelected.ToArray(); foreach (IEdition edition in editions.Where(edition => !Editions.Contains(edition))) { EditionsSelected.Remove(edition); } ICardCollection[] collections = CollectionsSelected.ToArray(); foreach (ICardCollection collection in collections.Where(collection => !Collections.Contains(collection))) { CollectionsSelected.Remove(collection); } }