Langage C# - Regrouper facilement des objets avec LINQ

Langage C# - Regrouper facilement des objets avec LINQ

LINQ est apparu en 2008 dans le langage C# et a entraîné en révolution dans la manière dont les développeurs écrivaient les traitements de données.

Avec LINQ, il est très simple de réaliser un regroupement de données. Voici un exemple dans lequel des clients sont regroupés en fonction de leur numéro de département :

List<Client> listeClients = new List<Client>() {
    new Client("Societe 1", "44220"),
    new Client("Societe 2", "75000"),
    new Client("Societe 3", "44000"),
    new Client("Societe 4", "75000"),
    new Client("Societe 5", "75000")
};

Dictionary<int, List<Client>> oData =
    (from oClient in listeClients
     group oClient by int.Parse(oClient.CP.Substring(0, 2)) into oGroup
     select oGroup).ToDictionary(o => o.Key, o => o.ToList());

Le résultat obtenu dans la variable oData peut être schématisé de la manière suivante :

Pour mieux la comprendre, décortiquons cette requête LINQ :




Dimitri S.

👨💻 Tech team leader | ⚽️ Passionné de foot | 🎤 Fan de JJG et Michel Sardou

6 ans

Merci James RAVAILLE ! Tous tes posts sont courts, mais précis et apprennent des choses parfois connues, mais intéressantes à rappeller, et d'autres fois des détails plus techniques ! Tous sont géniaux :)

Identifiez-vous pour afficher ou ajouter un commentaire

Plus d’articles de James RAVAILLE

Autres pages consultées

Explorer les sujets