Bonjour,
Je suis nouveau pour tout ce qui concerne le LINQ et j'ai une requête que je dois effectué mais je n'y arrive pas, peut-être une personne trouvera, je m'explique :
Je dois parcourir une liste de contrats et la comparer à une autre. Si un objet contrat est commun (via leurs id) aux deux listes, alors il doit me le dire.
De plus, il faut que ce contrat ait un statut spécifique passé en paramètre à la requête LINQ.
Je ne sais pas si vous avez compris mais en gros il me faudrait quelque chose comme ça :
Pour l'instant ce que je fais en LINQ est quelque chose comme ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 foreach (ContractVO C in listAllContracts) { // Il faut comparer les id du contrat et non l'objet if (listSelectedSentContracts.Contains(C) && C.Status.Equals(ContractStatus.SentToCustomer) || C.Status.Equals(ContractStatus.Signed)) ALORS JE FAIS UN TRAITEMENT else if (C.Status.Equals(ContractStatus.Stock) || C.Status.Equals(ContractStatus.Underway) || C.Status.Equals(ContractStatus.Pending) || (C.Status.Equals(ContractStatus.SentToCustomer) && !listSelectedSentContracts.Contains(C)) && C.StartDate >= cutOffEndDate) JE FAIS UN AUTRE TRAITEMENT }
Mais ça me retourne aucun objet alors qu'il y en a bien un
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 var listSentContracts = (from list in listSelectedSentContracts where C.ContractId.Equals(list.CustomerId) && Status2.Contains((ContractStatus)list.Status) select list).ToList();
Quelqu'un saurait comment faire la même chose que l'exemple donné plus haut en LINQ ?
Merci d'avance
Partager