LINQ to Objects (Visual Basic)
Термин "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 представляет собой новый подход к коллекциям. Раньше нужно было написать сложные циклы For Each
, определяющие порядок извлечения данных из коллекции. При использовании LINQ пишется декларативный код, описывающий, какие данные необходимо извлечь.
Кроме того, запросы LINQ предлагают три основных преимущества по сравнению с традиционными циклами For Each
:
Они более краткие и удобочитаемые, особенно при фильтрации нескольких условий.
Они предоставляют широкие возможности фильтрации, упорядочивания и группировки с минимумом кода приложения.
Они могут переноситься в другие источники данных практически без изменений.
В общем, чем сложнее операция, которую нужно выполнить с данными, тем больше преимуществ вы получаете при использовании LINQ вместо традиционных способов итерации.
Целью этого раздела является демонстрация подхода LINQ с помощью нескольких примеров. Он не претендует на исчерпывающий характер.
В этом разделе
LINQ и строки (Visual Basic)
Использование LINQ для запроса и преобразования строк и коллекций строк. Ссылки на разделы, демонстрирующие эти принципы.
LINQ и Рефлексия ion (Visual Basic)
Ссылки на пример, демонстрирующий, как LINQ использует отражение.
LINQ и каталоги файлов (Visual Basic)
Использование LINQ для взаимодействия с файловыми системами. Ссылки на разделы, демонстрирующие эти понятия.
Практическое руководство. Запрос массива с помощью LINQ (Visual Basic)
Выполнение запроса ArrayList в C#.
Практическое руководство. Добавление настраиваемых методов для запросов LINQ (Visual Basic)
Расширение набора методов, которые можно использовать для запросов LINQ путем добавления методов расширения в интерфейс IEnumerable<T>.
LINQ (Visual Basic)
Ссылки на разделы, рассказывающие LINQ и содержащие примеры кода выполнения запросов.