LINQ
LINQ (Language-Integrated Query) est une nouveauté du.NET Framework 3.5 C’est le nom d’un ensemble de technologies basé sur l’intégration de fonctions de requête directement dans le langage C#
Une requête est un jeu d’instructions qui décrit quelles données doivent être récupérées à partir d’une source (ou de sources) de données fournie, et quelles forme et organisation les données retournées doivent avoir
Les données sources sont organisées logiquement comme une séquence d’éléments du même type. Par exemple, une table de base de données SQL contient une séquence de lignes. Un fichier XML contient une « séquence » d’éléments XML (bien que ceux-ci soient organisés hiérarchiquement dans une arborescence). Une collection en mémoire contient une séquence d’objets.
LINQ to Objects
« LINQ to Objects » fait référence à l’utilisation directe de requêtes LINQ avec n’importe quelle collection IEnumerable ou IEnumerable, sans utiliser de fournisseur LINQ ou d’API intermédiaire comme LINQ to SQL ou LINQ to XML. Vous pouvez utiliser LINQ pour interroger des collections énumérables telles que List, Array ou Dictionary.
Fondamentalement, 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 les données d'une collection. Avec l’approche LINQ, vous écrivez du code déclaratif qui décrit ce que vous voulez récupérer.
Filtrage Sélection (projections) Classement Regroupement Jointure
Syntaxe de requête & Syntaxe de méthode
Filtrage
Sélection (projections)
Classement
Regroupement
Jointure
…