コード例 #1
0
        /// <summary>
        /// Устанавливает коллекцию, из которой будет происходить выборка.
        /// </summary>
        /// <param name="полноеИмяКоллекции">Полное имя коллекции, например "Справочник.Номенклатура".</param>
        public void УстановитьКоллекцию(string полноеИмяКоллекции)
        {
            полноеИмяКоллекции = !String.IsNullOrWhiteSpace(полноеИмяКоллекции) ? полноеИмяКоллекции : throw new ArgumentException("Указано некорректное полноеИмяКоллекции коллекции.", "имяКоллекции");

            string[] фрагментыИмени = полноеИмяКоллекции.Split('.');
            if (фрагментыИмени.Length != 2)
            {
                throw new ArgumentException("Указано некорректное полноеИмяКоллекции коллекции.", "имяКоллекции");
            }
            ТипКоллекции типКоллекции;

            if (!Enum.TryParse <ТипКоллекции>(фрагментыИмени[0], out типКоллекции))
            {
                throw new ArgumentException(String.Format("Тип коллекции \"{0}\" не определен.", фрагментыИмени[0]), "имяКоллекции");
            }
            УзелМетаданных метаданные;

            if (!this.bromClient.Метаданные.ПопыткаПолучить(полноеИмяКоллекции, out метаданные) || !(метаданные is МетаданныеОбъект))
            {
                throw new ArgumentException(String.Format("Коллекция с именем \"{0}\" не определена.", полноеИмяКоллекции), "имяКоллекции");
            }

            this.collectionType     = типКоллекции;
            this.collectionName     = метаданные.Имя();
            this.collectionMetadata = метаданные as МетаданныеОбъект;

            this.isModified = true;
        }
コード例 #2
0
        /// <summary>
        /// Сбрасыввает все настройки выборки.
        /// </summary>
        /// <returns>Метод возвращает ссылку на исходный селектор.</returns>
        public Селектор Сбросить()
        {
            this.items.Clear();
            this.fields.Clear();
            this.filters.Clear();
            this.sort.Clear();

            this.limit = 0;

            this.collectionMetadata = null;
            this.collectionName     = null;

            this.isModified = false;

            return(this);
        }