LINQ to Objects

Mise à jour : novembre 2007

LINQ to Objects fait référence à l'utilisation directe de requêtes LINQ avec n'importe quelle collection IEnumerable ou IEnumerable<T> sans utiliser de fournisseur LINQ ou d'API intermédiaire tel que LINQ to SQL ou LINQ to XML. Vous pouvez utiliser LINQ pour interroger toutes les collections dénombrables telles que List<T>, Array ou Dictionary<TKey, TValue>. La collection peut être définie par l'utilisateur ou retournée par une API du .NET Framework.

Pour simplifier, LINQ to Objects représente une nouvelle approche des collections. Auparavant, vous deviez écrire des boucles foreach complexes pour spécifier comment récupérer des données d'une collection. Avec LINQ, vous écrivez du code déclaratif qui décrit ce que vous souhaitez récupérer.

De plus, les requêtes LINQ offrent trois principaux avantages par rapport aux boucles foreach traditionnelles :

  1. Elles sont plus concises et lisibles, surtout lors du filtrage de plusieurs conditions.

  2. Elles fournissent des fonctions puissantes de filtrage, de classement et de regroupement avec un minimum de code d'application.

  3. Elles peuvent être appliquées à d'autres sources de données avec peu ou pas de changement.

En général, plus l'opération que vous souhaitez effectuer sur les données est complexe, plus vous aurez avantage à utiliser LINQ au lieu de techniques d'itération traditionnelles.

Cette section a pour objectif de présenter l'approche LINQ avec quelques exemples sélectionnés. Elle ne se veut pas exhaustive.

Dans cette section

  • Comment : interroger un ArrayList avec LINQ
    Montre comment interroger un ArrayList dans Visual Basic et C#.

  • LINQ et chaînes
    Explique comment LINQ peut être utilisé pour interroger et transformer des chaînes et des collections de chaînes. Inclut également des liens vers des rubriques qui présentent ces principes.

  • LINQ et répertoires de fichiers
    Explique comment LINQ peut être utilisé pour interagir avec les systèmes de fichiers. Inclut également des liens vers des rubriques qui présentent ces concepts.

  • LINQ et Reflection
    Inclut des liens vers un exemple qui montre comment LINQ utilise la réflexion.

  • LINQ (Language-Integrated Query)
    Fournit des liens vers des rubriques qui présentent LINQ et fournissent des exemples de code effectuant des requêtes.