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

Accès aux données Discussion :

Linq to SQL group by id


Sujet :

Accès aux données

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2009
    Messages
    58
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 58
    Points : 56
    Points
    56
    Par défaut Linq to SQL group by id
    Bonjour à tous,
    J'ai l'impression d'avoir à faire à un bug de linq car je m'arrache les cheveux depuis plusieurs jours et aucune des solutions trouvées sur internet ne fonctionne...
    Mon problème (simplifié) : j'ai une base de données avec plusieurs champs, dont un code identifiant qui identifie un objet (mais pas la ligne !), pour un même objet je peux donc avoir plusieurs lignes correspondantes.
    Je souhaite créer un dictionnaire de liste d'objets avec comme clé l'identifiant de l'objet et comme élément du dictionnaire une liste d'objet.
    J'ai donc à faire à un group by classique il me semble !
    Je travaille sous entityframework en C#,
    j'essaye donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    var groupData = from data in maBase.maTable
    group data by data.id;
    return groupData.todictionnary(f=>f.id,f=f.ToList());
    Normalement à cette étape, je devrais avoir dans mon dictionnaire mes objets groupés par id, et pour chaque id une liste d'objet... Or j'ai pour la majorité de mes identifiant, je me retrouve avec un seul objet, et pour certains plusieurs...je n'y comprend absolument rien...
    Si quelqu'un à une idée...
    merci par avance !

  2. #2
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2 064
    Points : 4 229
    Points
    4 229
    Par défaut
    Bonjour,
    je pense que tu t'es trompé dans la construction de ton dictionnaire c'est f.key et non f.id

  3. #3
    Membre expert
    Avatar de GuruuMeditation
    Homme Profil pro
    .Net Architect
    Inscrit en
    Octobre 2010
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net Architect
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 705
    Points : 3 568
    Points
    3 568
    Par défaut
    Et il manque un ">" dans "f=f.ToList()"
    Microsoft MVP : Windows Platform

    MCPD - Windows Phone Developer
    MCPD - Windows Developer 4

    http://www.guruumeditation.net

    “If debugging is the process of removing bugs, then programming must be the process of putting them in.”
    (Edsger W. Dijkstra)

  4. #4
    Membre du Club
    Inscrit en
    Octobre 2009
    Messages
    58
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 58
    Points : 56
    Points
    56
    Par défaut
    le f.key était bien là et j'avais bien mis le > le problème ne vient pas de là

  5. #5
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2 064
    Points : 4 229
    Points
    4 229
    Par défaut
    si tu pouvais mettre la requête que tu utilises vraiment, après as-tu vérifié que tes résultats correspondent bien à ce que tu as en bdd ?

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1
    Points : 2
    Points
    2
    Par défaut
    namespace ForumMFEQ.Areas.Admin.Controllers
    {
    public class HistoriquesController : Controller
    {
    //
    // GET: /Admin/Historiques/
    private ForumEntities _db = new ForumEntities();

    public ActionResult Index()
    {
    var groupData = from data in _db.FRM_LOG
    group data by data.ADRESSEIP;

    return View(groupData.ToDictionary(f => f.Key, f => f.ToList()));
    }

    }
    }

    Merci !!

Discussions similaires

  1. SQL GROUP BY intervalle de date
    Par Junior_jef dans le forum Requêtes et SQL.
    Réponses: 11
    Dernier message: 26/04/2007, 16h53
  2. Petit problème SQL (GROUP BY|ORDER BY)
    Par kalash_jako dans le forum Langage SQL
    Réponses: 4
    Dernier message: 10/04/2007, 00h17
  3. [SQL] Group by + SUM + Min
    Par Deejoh dans le forum Langage SQL
    Réponses: 1
    Dernier message: 07/11/2006, 16h46
  4. [Access] Requète SQL Group By, Order By and Co
    Par zoidy dans le forum Langage SQL
    Réponses: 4
    Dernier message: 09/06/2006, 15h37
  5. [SQL] Group By
    Par lapartdombre dans le forum Langage SQL
    Réponses: 3
    Dernier message: 12/01/2006, 18h06

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