Bonjour est-il possible de déclarer une variable locale dans une expression Linq.
Quelque chose du genre :
J'ai cherché mais sans auccès...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 var ret = (from a in m_Liste where (int nb => l.m_SousListe.Count(sl => sl.m_Condition)) > 0 select new { arRef = l.m_Ref, arNb = nb}).ToArray();
Mon but est d'avoir uniquement les items de la liste qui contiennent une sous liste qui vérifie une condition et à coté de la référence de l'item de la liste principale le nombre d'item sous items de la sous liste qui sont vérifié.
Qui a suivi ? ^^ En fait c'est simple; pour comprendre il faut juste regarder le résultat attendu en fin de post ça saute au yeux mais c'est assez dur avec cet exemple générique......
J'ai bien essayé cela :
mais ce n'est pas très propre et en plus ça duplique mes lignes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 var ret = from l in m_Liste from sl in l.m_SousListe where sl.m_Condition select new { arRef = l.m_Ref, arNb = a.m_Geometries.Where(sl2=> sl2.m_Condition).Count() };
item1 / 3
item1 / 3
item1 / 3
item2 / 1
item3 / 2
item3 / 2
Or je souhaiterais ceci :
item1 / 3
item2 / 1
item3 / 2
D'avance merci à ceux qui se pencheront sur mon soucis.
Partager