Laden...

[gelöst] DISTINCT Werte einer DataTable

Erstellt von Gremgiz vor 11 Jahren Letzter Beitrag vor 11 Jahren 633 Views
G
Gremgiz Themenstarter:in
106 Beiträge seit 2006
vor 11 Jahren
[gelöst] DISTINCT Werte einer DataTable

Hallo zusammen,

Ich habe eine DataTable mit ca. 40 Spalten und ca. 40.000 Zeilen, die an ein DataGridView gekoppelt ist. Über Textfelder kann man in der Liste nahezu nach Belieben filtern, was auch sehr performant funktioniert. Der Benutzer kann Werte filtern oder auch einzelne Spalten ausblenden bzw. wieder einblenden.

Ich möchte nun erreichen, dass wenn eine Benutzer bestimmte Spalten ausblendet nur noch die DISTINCT Werte der DataTable abgezeigt werden. Dazu könnte man DataTable.DefaultView.ToTable(/Distinct/ true, cols[]) nehmen. Wenn relativ wenig gefilterte Daten vorhanden sind (ca. 500 Zeilen) geht auch wunderbar schnell. Werden es mehr dauert es mehrere Sekunden (5-10), bis die DataTable gefiltert ist und der Benutzer weiterarbeiten kann. In der Zeit ist der UI Thread komplett blockiert. Ich suche daher eine schnellere Lösung. Hat jemand eine Idee?

G
Gremgiz Themenstarter:in
106 Beiträge seit 2006
vor 11 Jahren

Hallo zusammen,

wie das halt so ist. Man sucht tagelang und posted dann - ja und dann findet man die Lösung....

http://www.biggle.de/blog/doppelte-eintraege-aus-einer-datatable-entfernen-linqextension

hat ein sehr gutes Snippet dafür