Quelle: dotnetpro
Suchen mit LINQ, Teil 7 12.10.2020, 00:00 Uhr

Feinschliff

LINQ kann mehr als Daten abfragen. Diesmal: Teilen, verketten und prüfen.
LINQ bietet eine große Anzahl an Operatoren für Datenzugriffe und Datenabfragen. Alle Funktionen lassen sich im Debugger schrittweise ausführen und überwachen. Ein Großteil der von LINQ bereitgestellten Operatoren wurde bereits in [1] bis [6] vorgestellt. Nun werden weitere Operatoren anhand von Beispielen gezeigt, mit deren Hilfe Sie Datenfelder, Listen und Kollektionen komfortabel teilen, verketten und prüfen. Alle neuen Beispiele werden im erweiterten Beispielprogramm SimpleLINQ veranschaulicht. Starten Sie das Programm und wählen Sie im Hauptformular die Schaltfläche Operatoren und Lambda-Ausdrücke. Daraufhin wird das untergeordnete Formular frmOpsAndLambda geöffnet. In diesem rufen Sie alle Beispiele zu den LINQ-Operatoren über Befehlsschaltflächen ab, die jeweils ein bestimmtes Funk­tionsgebiet berücksichtigen. Die LINQ-Beispiele nutzen Daten, die nach Bedarf neu definiert werden oder im Rahmen der Beiträge [1] bis [6] bereits angelegt wurden. Details zu den verwendeten Daten finden Sie im Quelltext zum Beispielprogramm. Das Formular frmOpsAndLambda beinhaltet ein Listenfeld mit dem Namen ListBoxCtl, in dem die jeweiligen Ergebnisse zum Operatoreinsatz ausgegeben werden.
Um Ergebnisse zu Ganzzahllisten vereinfacht auszugeben, wird zunächst die neue Methode ShowIntegerData definiert. Diese übernimmt neben einem beschreibenden Text eine Ganzzahlliste, die die Schnittstelle IEnumerable implementiert (lst). Die Routine selbst gibt entsprechend der Routine ShowData den Beschreibungstext samt Trennlinie und dann alle Listenelemente über ­eine For-Each-Schleife aus.

Jetzt 1 Monat kostenlos testen!

Sie wollen zukünftig auch von den Vorteilen eines plus-Abos profitieren? Werden Sie jetzt dotnetpro-plus-Kunde.
  • + Digitales Kundenkonto,
  • + Zugriff auf das digitale Heft,
  • + Zugang zum digitalen Heftarchiv,
  • + Auf Wunsch: Weekly Newsletter,
  • + Sämtliche Codebeispiele im digitalen Heftarchiv verfügbar