| 

.NET C# Java Javascript Exception

2
Hallo zusammen,

Ich suche eine gute Lösung für einen perfomanten Filter eines DataView oder DataTable. Zur Ausgangssituation:

Ich habe ein datagridview welches Daten entweder aus einem DataTable oder DataView erhält. Diese beinhalten ca 200T Zeilen. Diese Daten müssen nun gefiltert werden. Ich habe dort eine Spalte mit Kundennummern und eine mit IDs.
Nun muss ich die IDs filtern. Die notwendigen IDs habe ich in einem Dictionary<string,string>. Die IDs sind keine fortlaufenden Nummern sondern durcheinander. Wie schaffe ich nun einen perfomanten Filter der mir die gesuchten IDs (ca. 8000) in dem datagridview anzeigt. Ich habe es mit linq und rowFilter versucht. Beides benötigt bei dieser Anzahl viel Zeit.
15.05.2015
vansari 1 1
1 Antwort
1
Wenn du die Daten aus einer Datenbank einliest, würde ich den Filter in der Datenbankabfrage setzen (dies hätte zusätzlich den Vorteil, dass das erste Einlesen schneller geht). Es ist keine gute Idee 200.000 Einträge in einer DataGridView zu halten, da dieses Control nicht sehr performant ist. Selbst die 8.000 gefiltereten Datensätze sind meines Erachtens noch zu viel. Ich zeige auf der Benutzeroberfläche nie mehr als 100 - 200 Datensätze in einer Liste an. Im Zweifel schalte ich eine Filtermaske vor die Anzeige, in welcher der Benutzer die Ergebnismenge einschränken kann.
18.05.2015
luedi 2,0k 1 9

Stelle deine .net-Frage jetzt!