Language-Integrated Query (LINQ)

Содержание

Слайд 2

LINQ. Определение.

LINQ (Language-Integrated Query) представляет простой и удобный язык запросов к источнику данных.

LINQ. Определение. LINQ (Language-Integrated Query) представляет простой и удобный язык запросов к
В качестве источника данных может выступать объект, реализующий интерфейс IEnumerable (например, стандартные коллекции, массивы), набор данных DataSet, документ XML. Но вне зависимости от типа источника LINQ позволяет применить ко всем один и тот же подход для выборки данных.
Пространство имен – System.Linq;

Слайд 3

LINQ. Разновидности.

LINQ to Objects: применяется для работы с массивами и коллекциями
LINQ to

LINQ. Разновидности. LINQ to Objects: применяется для работы с массивами и коллекциями
Entities: используется при обращении к базам данных через технологию Entity Framework
LINQ to Sql: технология доступа к данным в MS SQL Server
LINQ to XML: применяется при работе с файлами XML
LINQ to DataSet: применяется при работе с объектом DataSet
Parallel LINQ (PLINQ): используется для выполнения параллельных запросов

Слайд 4

Пример без LINQ

Пример без LINQ

Слайд 5

Пример с LINQ

Пример с LINQ

Слайд 6

Пример с LINQ (запись в одну строку)

Пример с LINQ (запись в одну строку)

Слайд 7

LINQ-запрос. Простейшее определение.

from переменная in набор_объектов select переменная;
Выражение from t in names

LINQ-запрос. Простейшее определение. from переменная in набор_объектов select переменная; Выражение from t
проходит по всем элементам массива names и определяет каждый элемент как t. Используя переменную t мы можем проводить над ней разные операции.
Далее с помощью оператора where проводится фильтрация объектов, и если объект соответствует критерию (в данном случае начальная буква должна быть "A"), то этот объект передается дальше.
Оператор orderby упорядочивает по возрастанию, то есть сортирует выбранные объекты.
Оператор select передает выбранные значения в результирующую выборку, которая возвращается LINQ-выражением.

Слайд 8

LINQ. Методы расширения.

Кроме стандартного синтаксиса from .. in .. select для создания

LINQ. Методы расширения. Кроме стандартного синтаксиса from .. in .. select для
запроса LINQ мы можем применять специальные методы расширения, которые определены в интерфейсе IEnumerable. Как правило, эти методы реализуют ту же функциональность, что и операторы LINQ типа where или orderby.

Слайд 9

LINQ. Методы расширения. Пример.

LINQ. Методы расширения. Пример.

Слайд 10

LINQ. Сочетание подходов.

используем стандартный синтаксис LINQ и метод расширения Count(), возвращающий количество

LINQ. Сочетание подходов. используем стандартный синтаксис LINQ и метод расширения Count(), возвращающий количество элементов в выборке:
элементов в выборке:

Слайд 11

LINQ. Используемые методы расширения

Select: определяет проекцию выбранных значений
Where: определяет фильтр выборки
OrderBy: упорядочивает

LINQ. Используемые методы расширения Select: определяет проекцию выбранных значений Where: определяет фильтр
элементы по возрастанию
OrderByDescending: упорядочивает элементы по убыванию
Join: соединяет две коллекции по определенному признаку
GroupBy: группирует элементы по ключу
Reverse: располагает элементы в обратном порядке
Contains: определяет, содержит ли коллекция определенный элемент
Distinct: удаляет дублирующиеся элементы из коллекции
Count: подсчитывает количество элементов коллекции, которые удовлетворяют определенному условию
Concat: объединяет две коллекции
First: выбирает первый элемент коллекции
ElementAt: выбирает элемент последовательности по определенному индексу
Last: выбирает последний элемент коллекции
И многие другие методы

Слайд 12

LINQ. Методы расширения. Пример со словарём.

LINQ. Методы расширения. Пример со словарём.

Слайд 13

LINQ. Методы расширения. Пример с XML.

LINQ. Методы расширения. Пример с XML.
Имя файла: Language-Integrated-Query-(LINQ).pptx
Количество просмотров: 28
Количество скачиваний: 0