IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linq Discussion :

[LinqToObjects] Somme de plusieurs dictionnaires


Sujet :

Linq

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 6
    Par défaut [LinqToObjects] Somme de plusieurs dictionnaires
    Bonjour à tous!

    Je cherche à effectuer une somme sur les valeurs de plusieurs dictionnaires qui partagent des clés (toujours un entier compris entre 10 et 17) mais je ne n'ai pas beaucoup de pratique et pas d'idée claire sur la façon de procéder.

    à la base, j'ai une classe Building qui contient une liste d'Area.
    Area possède une propriété Inputs qui est de type Dictionary<int,float>.
    Je cherche à faire une requête linq qui me permettrait de construire un Dictionnaire agrégeant les Area.Inputs en effectuant une somme sur les valeurs.

    Je pensais utiliser ToDictionary mais je ne sais pas vraiment bien l'utiliser, quelqu'un aurait une idée?

  2. #2
    Membre éprouvé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2006
    Messages
    1 627
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 627
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    int res = tonDico.AddRange(AutreDico).Sum(kvp => kvp.Key);

  3. #3
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 6
    Par défaut
    Merci beaucoup!

    EDIT : j'ai parlé trop vite, il n'y a pas de méthode AddRange sur un Dictionnaire...
    De plus, je ne veux pas récupérer la somme des valeurs contenues dans les dictionnaires, mais plutôt construire un dictionnaire dont les valeurs seraient les sommes des valeurs de n dictionnaires associées à la même clé.

    par exemple, mon dictionnaire ayant pour clé un entier de 1 à 9 aurait associé à la clé 1 la somme des valeurs associées aux clés 1 dans n dictionnaires.

    En cherchant un peu, j'ai commencé une méthode d'extension qui me permettrait de faire cela mais je me heurte au problème de l'utilisation des opérateurs dans une classe générique.

    Je vais tenter de faire ça à la rapide avec une boucle foreach

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fonction vba somme de plusieurs champs
    Par Greg84 dans le forum Access
    Réponses: 4
    Dernier message: 09/08/2006, 15h16
  2. somme sur plusieurs lignes d'un dbgrid
    Par pierrot67 dans le forum Bases de données
    Réponses: 11
    Dernier message: 11/07/2006, 10h24
  3. somme entre plusieurs tables
    Par copin dans le forum Access
    Réponses: 1
    Dernier message: 05/06/2006, 13h03
  4. [CR] probleme de somme sur plusieurs pages
    Par d@rthwing dans le forum SAP Crystal Reports
    Réponses: 9
    Dernier message: 26/08/2005, 14h31
  5. [math] somme de plusieurs vecteurs à 3 dimensions
    Par teska dans le forum Mathématiques
    Réponses: 5
    Dernier message: 04/06/2003, 21h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo