Стандартные операторы запроса с 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 | Возвращает последовательность, представляющую собой объединение двух других последовательностей. |