LINQ to Objects

Термином "LINQ to Objects" называют использование запросов LINQ непосредственно с коллекциями IEnumerable или IEnumerable<T> без промежуточных поставщиков LINQ или API-интерфейсов, таких как LINQ to SQL или LINQ to XML.LINQ можно использовать для запроса любых перечислимых коллекций, таких как List<T>, Array или Dictionary<TKey, TValue>.Коллекция может быть определенной пользователем или возвращенной API .NET Framework.

По сути, LINQ to Objects представляет новый подход к коллекциям.Раньше нужно было писать сложные циклы foreach, которые определяли способ извлечения данных из коллекции.При применении подхода LINQ создается декларативный код с описанием необходимых извлекаемых данных.

Кроме того, запросы LINQ имеют три основных преимущества перед традиционными циклами foreach.

  1. Они более компактные и удобочитаемые, особенно при фильтрации по нескольким условиям.

  2. Они предоставляют мощные возможности фильтрации, упорядочивания и группировки с минимальным объемом кода приложения.

  3. Они могут быть перенесены на другие источники данных с минимальными изменениями или без изменений.

В общем случае, чем более сложные операции следует выполнить над данными, тем больше преимуществ от применения LINQ вместо использования традиционных методов итераций.

В этом разделе демонстрируется подход LINQ в нескольких выбранных примерах.Он не является исчерпывающим.

Содержание