Comparer deux listes pratiquement identiques

Résolu
julyraj Messages postés 4 Date d'inscription jeudi 15 novembre 2018 Statut Membre Dernière intervention 16 novembre 2018 - 15 nov. 2018 à 21:40
julyraj Messages postés 4 Date d'inscription jeudi 15 novembre 2018 Statut Membre Dernière intervention 16 novembre 2018 - 16 nov. 2018 à 16:35
Bonjour,

j'essaie de trouver une solution élégante à mon problème, mais j'y arrive pas. Je vous explique; j'ai deux listes. Elles ont le même nombre de colonne. J'essaie de supprimer les lignes de la seconde liste qui ont le même code utilisateur.

List A

Col1 Col2 Col3
111 User4 2017
2222 User5 2016
3445 User7 2017

ListB

Col1 Col2 Col3
466 User1 2019
123 User2 2016
222 User4 2015
3333 User7 2015

Ce que je souhaite c'est retirer la ligne avec User4 et User7 de la liste B.

J'ai essayé ceci :

listB = listA.Except(ListB).ToList



Sauf que ça me retire rien puisque mes lignes ne sont pas pareil. J'ai essayé d'autre truc en LINQ, mais j'arrive toujours au même problème. J'ai une vague idée que je dois parcourir les deux listes, mais je suis pas mal perdue. J'avais plutôt l'habitude de faire du frontend, j'ai un peu mal avec le backend.

Si vous pouviez m'aider, j'apprécierai.

Merci

2 réponses

Whismeril Messages postés 19062 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 juin 2024 657
15 nov. 2018 à 22:04
Bonsoir,

merci de lire ceci, afin qu'à l'avenir, tu utilises mieux les balises de codes
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

Un truc comme ça ?
listB = listB.Where(Function(x) (Not listA.Any(Function(y) x.Col1 = y.Col1))).ToList()

0
julyraj Messages postés 4 Date d'inscription jeudi 15 novembre 2018 Statut Membre Dernière intervention 16 novembre 2018
16 nov. 2018 à 14:22
Bonjour,

Et merci pour la réponse.

Mon souci, c'est que je travaille avec un système maison, il est certes en VB.NET, mais bon les deux listes en question sont des List(of ) et j'ai donc pas accès au colonne directement. Je sais pas s'il y a moyen de faire votre exemple, mais avec la position de la colonne?
0
julyraj Messages postés 4 Date d'inscription jeudi 15 novembre 2018 Statut Membre Dernière intervention 16 novembre 2018
16 nov. 2018 à 16:35
Bon finalement j'ai mal poser ma question, je vais la refaire plus proprement.
0
Rejoignez-nous