English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
LINQ (Языковая интеграция запросов) - это единая структура запросов в C# и VB.NET, используемая для извлечения данных из различных источников и форматов. Она интегрирована в C# или VB, что устраняет несоответствие между языком программирования и базой данных, и предоставляет единственный интерфейс запроса для различных типов источников данных.
Например, SQL - это языковая структура запросов, используемая для хранения и извлечения данных из базы данных. Также, LINQ - это встроенная структура запросов в C# и VB.NET, используемая для извлечения данных из различных источников данных (например, собраний, DataSet ADO.Net, XML Docs, веб-сервисы, MS SQL Server и других баз данных).
Запрос LINQ возвращает результаты в виде объектов. Это позволяет вам использовать объектно-ориентированные методы на наборах результатов, не беспокоясь о преобразовании результатов из различных форматов в объекты.
Этот пример демонстрирует простой запрос LINQ, который извлекает все строки из массива, содержащие “a”.
// Источник данных string[] names = {"Bill", "Steve", "James", "Mohan"}; // Запрос LINQ var myLinqQuery = from name in names where name.Contains('a') select name; // Выполнение запроса foreach(var name in myLinqQuery) Console.Write(name + " ");
В этом примере строковый массив names является источником данных. Вот запрос LINQ, который назначен переменной myLinqQuery.
from name in names where name.Contains('a') select name;
Этот запрос использует синтаксис запросов LINQ. Вы узнаете больше о синтаксисе запросов в главе “Синтаксис запросов”.
До выполнения запроса LINQ вы не получите его результатов. Запросы LINQ можно выполнять несколькими способами, и здесь мы используем цикл foreach для выполнения запроса, хранящегося в myLinqQuery. Цикл foreach выполняет запрос к источнику данных и получают результаты, затем итерируется по результатам.
Таким образом, каждый запрос LINQ должен обращаться к некоторому источнику данных, будь то массив, набор, XML или другая база данных. После написания запроса LINQ его необходимо выполнить, чтобы получить результаты.
В следующей главе вы узнаете, почему стоит использовать LINQ.