public virtual bool Set(INamedCollection <T> collection) { if (collection == null) { throw new CustomArgumentException("Невозможно установить пустую коллекцию!"); } var result = false; // обновляем элементы из новой коллекции foreach (var item in collection) { result = this.Set(item) || result; } // удаляем лишние элементы из текущей коллекции for (int i = this.Count - 1; i >= 0; i--) { var current = this[i]; var exist = collection.Get(current.Name); if (exist == null) { this.Remove(current); result = true; } } return(result); }
static DataEnvironment() { _accessors = DataAccessProvider.Instance; _providers = DataProviderFactory.Instance; _populators = DataPopulatorProviderFactory.Instance; _drivers = new NamedCollection <IDataDriver>(p => p.Name, StringComparer.OrdinalIgnoreCase); _filters = new DataAccessFilterCollection(); }
public MetadataFile(string filePath, string name) { if (name != null) { _name = name.Trim(); } _filePath = filePath; _entities = new NamedCollection <IDataEntity>(p => p.Name); _commands = new NamedCollection <IDataCommand>(p => p.Name); }
protected DataProviderFactory() { _providers = new NamedCollection <IDataProvider>(p => p.Name, StringComparer.OrdinalIgnoreCase); }