Стандартные операторы запроса с LINQ - Типы операторов
ОГЛАВЛЕНИЕ
Страница 3 из 8
Типы операторов
Существует много различных типов операторов (любой из них можно найти в классаых Enumerable и Queryable, воспользовавшись обозревателем объектов). На рис. A приведены типы операторов в алфавитном порядке. Он дает представление о том, какие функции операторы могут выполнять. Преимущества некоторых из них мы продемонстрируем на примере их применения в методах «LINQ — объекты» и «LINQ — сущности».
Figure A Категории операторов
| Оператор | Описание |
|---|---|
| Объединение | |
| Aggregate | Применяет к последовательности пользовательский метод. |
| Average | Вычисляет среднее для числовой последовательности. |
| Count | Возвращает количество элементов в последовательности (целочисленное значение). |
| LongCount | Возвращает количество элементов в последовательности (значение в диапазоне LongInt). |
| Min | Возвращает наименьшее значение для числовой последовательности. |
| Max | Возвращает наибольшее значение для числовой последовательности. |
| Sum | Складывает члены числовой последовательности. |
| Конкатенация | |
| Concat | Соединяет две последовательности в одну. |
| Преобразование | |
| Cast | Преобразует элементы последовательности в элемены указанного типа. |
| OfType | Выбирает из элементов последовательности элемены указанного типа. |
| ToArray | Возвращает массив из элементов последовательности. |
| ToDictionary | Возвращает словарь из элементов последовательности. |
| ToList | Возвращает список из элементов последовательности. |
| ToLookup | Возвращает результаты поиска по последовательности. |
| ToSequence | Возвращает последовательность IEnumerable. |
| Элемент | |
| DefaultIfEmpty | Создает стандартный элемент для пустой последовательности. |
| ElementAt | Возвращает элемент последовательности по указанному индексу. |
| ElementAtOrDefault | Возвращает элемент по указанному индексу или стандартный элемент (если индекс вышел за пределы диапазона). |
| First | Возвращает первый элемент последовательности. |
| FirstOrDefault | Возвращает первый элемент последовательности или стандартный элемент (если нужный элемент не найден). |
| Last | Возвращает последний элемент последовательности. |
| LastOrDefault | Возвращает последний элемент последовательности или стандартный элемент (если нужный элемент не найден). |
| Single | Возвращает единственный элемент последовательности. |
| SingleOrDefault | Возвращает единственный элемент последовательности или стандартный элемент (если нужный элемент не найден). |
| Равенство | |
| SequenceEqual | Проверяет эквивалентность двух последовательностей. |
| Создание | |
| Empty | Создает пустую последовательность. |
| Range | Создает последовательность в соответствии с заданным диапазоном. |
| Repeat | Создает последовательность, повторяя значение заданное количество раз. |
| Группировка | |
| GroupBy | Группирует элементы последовательности указанным образом. |
| Присоединение | |
| GroupJoin | Выполняет группированное соединение двух последовательностей. |
| Join | Выполняет внутреннее соединение двух последовательностей. |
| Упорядочение | |
| OrderBy | Упорядочивает элементы последовательности по заданным значениям в порядке возрастания. |
| OrderByDescending | Упорядочивает элементы последовательности по заданным значениям в порядке убывания. |
| ThenBy | Упорядочивает элементы уже упорядоченной последовательности в порядке возрастания. |
| ThenByDescending | Упорядочивает элементы уже упорядоченной последовательности в порядке убывания. |
| Reverse | Зеркально отображает порядок расположения элементов в последовательности. |
| Разделение на части | |
| Skip | Возвращает последовательность, в которой указанное число элементов пропущено. |
| SkipWhile | Возвращает последовательность, в которой пропущены элементы, не соответствующие указанному условию. |
| Take | Возвращает последовательность, в которую включается указанное число элементов. |
| TakeWhile | Возвращает последовательность, в которую включаются элементы, соответствующие указанному условию. |
| Проекция | |
| Select | Создает проекцию части последовательности. |
| SelectMany | Создает проекцию части последовательности по принципу «один ко многим». |
| Кванторы | |
| All | Определяет соответствие всех элементов последовательности указанным условиям. |
| Any | Определяет, есть ли в последовательность элементы, удовлетворяющие указанным условиям. |
| Contains | Определяет, есть ли в последовательности указанный элемент. |
| Ограничение | |
| Where | Сортирует члены последовательности. |
| Настройка | |
| Distinct | Возвращает последовательность без повторяющихся элементов. |
| Except | Возвращает последовательность, представляющую собой разность двух других последовательностей. |
| Intersect | Возвращает последовательность, представляющую собой пересечение двух других последовательностей. |
| Union | Возвращает последовательность, представляющую собой объединение двух других последовательностей. |
