/// <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; }
/// <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); }