Tu as effectivement bien compris ce que je cherchais à faire.
J'ai trouvé une solution avec Join mais qui ne me plaît pas sachant que je dois répliquer cette logique dans beaucoup d'endroits.
C'est en faisant ça :
1 2
| List<TARateAdjustment> taras = taRateAdjustments.Where(x => x.model == "toto").ToList();
List<TARateAdjustment> tarasFILTERED = taras.Join(tapcs, x => x.technicalAttribute, y => y.technicalAttribute, (x, y) => new TARateAdjustment(x.model, x.technicalAttribute)).ToList(); |
En effet, cela se fait en 2 temps pour être un minimum lisible et en plus ça me force à rajouter un constructeur non vide pour TARateAdjustment.
Quand je regarde à ce que tu proposes, je comprends que je devrais avoir quelque chose comme ça, c'est bien ça? :
List<TARateAdjustment> taras = excelData.taRateAdjustments.Where(x => x.model == "toto" && tapcs.Any(y=> y.technicalAttribute == x.technicalAttribute)).ToList();
Si j'utilise Contains, je dois avoir avoir un nouveau constructeur de TAPricingCategory, car ça prend un object entier et non juste un prédicat (clause where quoi).
Y a-t-il moyen de visualiser la requête qui est générée bien qu'il y est des expressions lambda ?
Merci.
Partager