Doublons dans datagridview

tof008 Messages postés 695 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 5 janvier 2010 - 5 janv. 2010 à 15:23
krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 - 6 janv. 2010 à 16:13
Bonjour et meilleurs voeux pour la nouvelle année... qui commence pour moi par une question ;).

J'ai un dataGridView rempli de données (notamment des numéros de telephone). J'aurais voulu extraire tous les numéros de manière unique (c'est à dire sans les doublons). Mais pas moyen de trouver comment faire, à part en parcourant l'intégralité de ma colonne... Ce que je prefererais éviter pour des raisons de rapidité.

Quelqu'un aurait-il une solution à me proposer?

Je vous remercie d'avance, bonne journée!




 

3 réponses

krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 49
5 janv. 2010 à 16:42
Salut

De quel type est ta source de données ? DataSet ?

Krimog : while (!(succeed = try())) ;
- Nous ne sommes pas des décodeurs ambulants. Le style SMS est prohibé. -
0
Perecastorr Messages postés 39 Date d'inscription lundi 10 novembre 2008 Statut Membre Dernière intervention 7 septembre 2010 1
6 janv. 2010 à 14:20
Salut,

Tu peux utiliser la commande sql SELECT DISTINCT qui enlevera les doublons à la source.
0
krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 49
6 janv. 2010 à 16:13
@Perecastorr : C'est effectivement la solution la plus simple et la plus efficace, mais à condition que sa source soit interrogeable en SQL et qu'il puisse modifier sa couche d'accès aux données.

Mais avec LINQ, les classes implémentant IEnumerable doivent avoir une méthode Distinct() si je ne m'abuse.

Lien MSDN

Je ne connais pas exactement les performances, mais ça doit être relativement efficace.

Rq : il existe une surcharge de la méthode Distinct permettant de définir un IEqualityComparer.

Krimog : while (!(succeed = try())) ;
- Nous ne sommes pas des décodeurs ambulants. Le style SMS est prohibé. -
0
Rejoignez-nous