Exemplo n.º 1
0
        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);
        }
Exemplo n.º 2
0
 static DataEnvironment()
 {
     _accessors  = DataAccessProvider.Instance;
     _providers  = DataProviderFactory.Instance;
     _populators = DataPopulatorProviderFactory.Instance;
     _drivers    = new NamedCollection <IDataDriver>(p => p.Name, StringComparer.OrdinalIgnoreCase);
     _filters    = new DataAccessFilterCollection();
 }
Exemplo n.º 3
0
        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);
        }
Exemplo n.º 4
0
 protected DataProviderFactory()
 {
     _providers = new NamedCollection <IDataProvider>(p => p.Name, StringComparer.OrdinalIgnoreCase);
 }