Précédent   Forum du club des développeurs et IT Pro > Dotnet > Accès aux données > Entity Framework
Entity Framework Forum d'entraide sur le développement avec le modèle d'accès aux données Entity Framework de Microsoft.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 11/07/2012, 11h53   #1
kimausoleil
Membre habitué
 
Avatar de kimausoleil
 
Homme Christophe
Développeur informatique
Inscription : février 2004
Messages : 126
Détails du profil
Informations personnelles :
Nom : Homme Christophe
Localisation : France, Saône et Loire (Bourgogne)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Arts - Culture

Informations forums :
Inscription : février 2004
Messages : 126
Points : 100
Points : 100
Par défaut Linq to Entities Group By

Bonjour !

J'ai simplement une requête Linq qui doit me renvoyer une liste d'entités par un Group By.

J'ai essayé cela :
Code :
1
2
3
4
5
6
7
8
9
10
11
 
Dim liste as List(Of Saison)
liste = (From s In _db.Saisons
                Group By s.ID, s.Debut, s.Fin, s.Libelle Into Group
                Select New Saison With {
                    .ID = ID,
                    .Debut = Debut,
                    .Fin = Fin,
                    .Libelle = Libelle
                    }
                ).ToList
Et là j'ai une exception :
Citation:
Le type d'entité « Saison » ne peut pas être construit dans une requête LINQ to Entities.
Ai-je une erreur de syntaxe ?


Résultat, je suis passé par 2 étapes :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
        Dim query = From s In _db.Saisons
                    Group By s.ID, s.Debut, s.Fin, s.Libelle Into sais = Group
                    Select New With {
                                .ID = ID,
                                .Debut = Debut,
                                .Fin = Fin,
                                .Libelle = Libelle
                        }
 
        Dim liste As New List(Of Saison)
        For Each sais In query
            liste.Add(New Saison With {
                      .ID = sais.ID,
                      .Debut = sais.Debut,
                      .Fin = sais.Fin,
                      .Libelle = sais.Libelle})
        Next
Mais je ne trouve pas très satisfaisant de devoir passer par un type anonyme, et de re-boucler pour créer toutes mes saisons...


Merci pour vos idées.
kimausoleil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/07/2012, 17h41   #2
GuruuMeditation
Expert Confirmé
 
Avatar de GuruuMeditation
 
Homme Olivier Matis
.Net Architect
Inscription : octobre 2010
Messages : 1 351
Détails du profil
Informations personnelles :
Nom : Homme Olivier Matis
Âge : 38
Localisation : Belgique

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

Informations forums :
Inscription : octobre 2010
Messages : 1 351
Points : 2 867
Points : 2 867
Envoyer un message via MSN à GuruuMeditation
Non, tu fais bien, avec linq to entity tu dois le faire comme ça car Entity ne connais pas ta classe.
__________________
Microsoft MVP : Visual C#

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)
GuruuMeditation est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/07/2012, 19h18   #3
kimausoleil
Membre habitué
 
Avatar de kimausoleil
 
Homme Christophe
Développeur informatique
Inscription : février 2004
Messages : 126
Détails du profil
Informations personnelles :
Nom : Homme Christophe
Localisation : France, Saône et Loire (Bourgogne)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Arts - Culture

Informations forums :
Inscription : février 2004
Messages : 126
Points : 100
Points : 100
Citation:
Envoyé par GuruuMeditation Voir le message
Non, tu fais bien, avec linq to entity tu dois le faire comme ça car Entity ne connais pas ta classe.
Ok
kimausoleil est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 07h16.


 
 
 
 
Partenaires

Hébergement Web