Précédent   Forum du club des développeurs et IT Pro > Dotnet > Accès aux données > Linq
Linq Forum d'entraide sur la manipulation de données avec Linq
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 09/11/2012, 14h09   #1
dfiad77pro
Candidat au titre de Membre du Club
 
Homme
Ingénieur développement logiciels
Inscription : décembre 2008
Messages : 84
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 25
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2008
Messages : 84
Points : 10
Points : 10
Par défaut Requête linq entity avec réduction des sous éléments

Bonjour,
je cherche a réduire les résultats(sous résultats "Chemins") de la requête suivante sans faire de sous requêtes

Code :
1
2
3
4
5
 
var rqt= (from da in listDest
where da.NUM_TYP == 3 
&& da.CHEMINs.Any(x => x.SEQ_SOUS_TYP == 4)    //ici les résultats à réduire                          
 select da);
En fait je voudrai sélectionner que les chemins correspondant à SEQ_MOD_GRILLE_VRS == 4

or le any ne semble pas correspondre puisque la condition s'applique à la liste de destinations ( donc ça ne "supprime" pas les chemins du sous objet)

ps : je ne veux pas faire ça dans le select car on perd le typage d'entité pour les bindings
dfiad77pro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/11/2012, 14h44   #2
gcorbineau
Membre Expert
 
Homme Guillaume
Développeur .NET
Inscription : juillet 2006
Messages : 854
Détails du profil
Informations personnelles :
Nom : Homme Guillaume
Localisation : France, Loire Atlantique (Pays de la Loire)

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

Informations forums :
Inscription : juillet 2006
Messages : 854
Points : 1 296
Points : 1 296
Essaye ca

Code :
1
2
3
4
var rqt= (from da in listDest
where da.NUM_TYP == 3 
&& da.CHEMINs.Where(x => x.SEQ_SOUS_TYP == 4)    //ici les résultats à réduire                          
 select da);
__________________
___________________________________________________________________________________________________________
Si mon message t'a aidé - Si au contraire, je suis hors sujet - Quand vous avez la réponse à votre question.
Est notre ami
gcorbineau est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/11/2012, 14h46   #3
dfiad77pro
Candidat au titre de Membre du Club
 
Homme
Ingénieur développement logiciels
Inscription : décembre 2008
Messages : 84
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 25
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2008
Messages : 84
Points : 10
Points : 10
malheureusement le where est booléen ça ne marche pas pour une réduction j'avais déjà essayé
dfiad77pro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/11/2012, 08h59   #4
dfiad77pro
Candidat au titre de Membre du Club
 
Homme
Ingénieur développement logiciels
Inscription : décembre 2008
Messages : 84
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 25
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2008
Messages : 84
Points : 10
Points : 10
personne n'a d'idées?
dfiad77pro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/11/2012, 09h35   #5
gcorbineau
Membre Expert
 
Homme Guillaume
Développeur .NET
Inscription : juillet 2006
Messages : 854
Détails du profil
Informations personnelles :
Nom : Homme Guillaume
Localisation : France, Loire Atlantique (Pays de la Loire)

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

Informations forums :
Inscription : juillet 2006
Messages : 854
Points : 1 296
Points : 1 296
essaye avec un select à la place du WHERE
__________________
___________________________________________________________________________________________________________
Si mon message t'a aidé - Si au contraire, je suis hors sujet - Quand vous avez la réponse à votre question.
Est notre ami
gcorbineau est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/11/2012, 09h39   #6
dfiad77pro
Candidat au titre de Membre du Club
 
Homme
Ingénieur développement logiciels
Inscription : décembre 2008
Messages : 84
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 25
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2008
Messages : 84
Points : 10
Points : 10
Déja fait , ça donne une erreur de syntax ( l’opérateur && ne peut être appliqué aux opérande de type 'bool')
dfiad77pro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/11/2012, 09h55   #7
gcorbineau
Membre Expert
 
Homme Guillaume
Développeur .NET
Inscription : juillet 2006
Messages : 854
Détails du profil
Informations personnelles :
Nom : Homme Guillaume
Localisation : France, Loire Atlantique (Pays de la Loire)

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

Informations forums :
Inscription : juillet 2006
Messages : 854
Points : 1 296
Points : 1 296
Dans ce cas, Effectue d'abord ton filtre sur le sous ensemble et fait ton filtre ensuite.
__________________
___________________________________________________________________________________________________________
Si mon message t'a aidé - Si au contraire, je suis hors sujet - Quand vous avez la réponse à votre question.
Est notre ami
gcorbineau est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/11/2012, 09h59   #8
dfiad77pro
Candidat au titre de Membre du Club
 
Homme
Ingénieur développement logiciels
Inscription : décembre 2008
Messages : 84
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 25
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2008
Messages : 84
Points : 10
Points : 10
Le sous ensemble étant une relation d'entité, je ne vois pas comment faire
dfiad77pro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/12/2012, 18h58   #9
guillaume07
Débutant
 
Inscription : mai 2006
Messages : 615
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 615
Points : 182
Points : 182
essaye de poser ta question sur www.stakeoverflow.com
guillaume07 est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 03/01/2013, 16h43   #10
MaximePalmisano
Membre émérite
 
Homme Maxime PALMISANO
Développeur .NET
Inscription : juin 2011
Messages : 489
Détails du profil
Informations personnelles :
Nom : Homme Maxime PALMISANO
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Développeur .NET
Secteur : Finance

Informations forums :
Inscription : juin 2011
Messages : 489
Points : 969
Points : 969
Est ce que tu ne cherches pas tout simplement à faire :

Code :
1
2
3
listDest.Where(da => da.NUM_TYP == 3)
.Select(da => da.CHEMINs)
.Any(chemin => chemin.SEQ_SOUS_TYP == 4);
__________________
Mon blog sur les technos .NET et Agile -> http://blog.developpez.com/maximepalmisano/
MaximePalmisano est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 02h25.


 
 
 
 
Partenaires

Hébergement Web