Интегрированный Запрос языка (LINQ) является компонентом Microsoft.NET Framework, который добавляет собственные возможности запросов данных к языкам.NET. Рассмотрите использование более подробных тегов в надлежащих случаях, например [linq-to-sql], [linq к объектам] / [платформа объекта] или [plinq]

Этот тег для вопросов о , основанный на.NET DSL (Предметно-ориентированный язык), представленный в , для запросов источников данных, таких как базы данных, XML-файлы или списки объектов в оперативной памяти.

Рассмотрите использование более подробных тегов в надлежащих случаях, например, / или .

О LINQ

Все источники данных могут быть запрошены с помощью того же самого, читаемого и простого в использовании синтаксиса - или скорее синтаксисов, потому что LINQ поддерживает две нотации:

  • Встройте LINQ или запросите синтаксис, где запросы выражаются на подобном SQL языке с диалектами и в C# и в VB.NET.

  • Быстрый LINQ или операторы запроса, где запросы выражаются как лямбда-выражения и могут быть связаны (LINQed?) использование быстрого синтаксиса.

Все операции запроса LINQ состоят из трех отличных действий:

  1. Получите источник данных.
  2. Создайте запрос.
  3. Выполните запрос.

Основные реализации:

.NET languages (C#, F#, VB.NET)

Некоторые примеры:

Быстрый синтаксис (C#)

var result = dbContext.Products .Where(p => p.Category.Name == "Toys" && p.Price >= 2.50) .Select(p => p.Name); 

Синтаксис запроса (C#)

var result = from product in dbContext.Products where product.Category.Name == "Toys" where product.Price >= 2.50 select product.Name; 

Синтаксис запроса (VB.NET)

Dim result = From product in dbContext.Products _ Where product.Category.Name = "Toys" _ Where product.Price >= 2.50 _ Select product.Name 

Этот запрос возвратил бы название всех продуктов в категории "Toys" с ценой, больше, чем или равный 2,50.

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

LINQ прибывает во многие разновидности, самые известные

LINQ имеет много расширений, реализованных онлайн и множество дополнительных проектов с открытым исходным кодом как MORELINQ, который добавляет больше операторов к операторам.NET и многих других.

Существуют другие реализации LINQ, который может быть найден в Интернете, таком как LINQ к SharePoint, LINQ к Твиттеру, LINQ к CSV, LINQ к Excel, LINQ к JSON и LINQ к Google.

Ресурсы