LINQ .NET 9 | CountBy AggregateBy neue Methoden

LINQ .NET 9: Neue Operatoren CountBy & AggregateBy einfach erklärt
Morris M. | Softwareentwickler
03/2024

TL;DR

.NET 9 erweitert LINQ um die Methoden CountBy und AggregateBy. Der Artikel zeigt anhand praxisnaher Beispiele, wie sich Gruppierungen und Aggregationen künftig einfacher umsetzen lassen.

Effizientere LINQ-Queries in .NET 9: CountBy() und AggregateBy() im Praxistest

Mit .NET 9 hat Microsoft eine Reihe von neuen LINQ-Methoden eingeführt, die das Arbeiten mit Datensammlungen erheblich vereinfachen. Zwei der bemerkenswertesten Neuerungen sind CountBy() und AggregateBy(). In diesem Blog-Beitrag schauen wir uns diese Methoden näher an, erklären, wie sie funktionieren und zeigen, wie sie in der Praxis eingesetzt werden können.

CountBy() – Effizientes Gefähle zählen

Die Methode CountBy() ermöglicht das effiziente Zählen von Elementen auf Basis eines Schlüssels. Im Gegensatz zur bisherigen Kombination aus GroupBy() und Count(), die die gesamte Sammlung in Gruppen aufteilt und dann zählt, ist CountBy() optimiert, um direkt einen Schlüssel zu zählen, ohne die Daten zu gruppieren.

Beispiel:

LINQ CountBy Codebeispiel

In diesem Beispiel wird CountBy() verwendet, um die Häufigkeit jedes Zeichens in einem String zu zählen. Das Ergebnis ist eine Sammlung von Schlüssel-Wert-Paaren, wobei der Schlüssel das Zeichen und der Wert die Anzahl ist.

AggregateBy() – Erweiterte Aggregationen

AggregateBy() hingegen ist eine vielseitigere Methode, die benutzerdefinierte Aggregationen auf Basis eines Schlüssels durchführen kann. Sie ermöglicht komplexere Operationen, wie das Summieren, Durchschnittswertberechnung oder jede andere Art der Zusammenfassung.

Beispiel:

LINQ AggregateBy Codebeispiel

Hier berechnet AggregateBy() die Gesamtpunktzahl jedes Teilnehmers in einer Spielesammlung. Die Methode fängt mit einem Startwert an und aggregiert dann die Punkte für jeden Schlüssel. Schlüssel und Schlüsselwerte entsprechen den LINQ-Tupeln, die als Ergebnis zurückgegeben werden.

Vergleich mit der bisherigen Vorgehensweise

Vor .NET 9 wäre eine ähnliche Operation mit GroupBy() und anschließendem Count() oder Sum() möglich gewesen, was aber oft zu komplizierterem Code führte. Mit CountBy() und AggregateBy() wird dieser Code sowohl kürzer als auch lesbarer.

LINQ .NET 9 neue Methoden Ergebnis

Zusammenfassung

CountBy() und AggregateBy() sind wertvolle Ergänzungen zur LINQ-Bibliothek in .NET 9. Sie machen den Code kürzer, lesbarer und effizienter, indem sie häufige Muster der Datenaggregation vereinfachen. Für Entwickler, die regelmäßig mit großen Datenmengen arbeiten, sind dies wichtige Werkzeuge, um Performanz und Codequalität zu verbessern.

No items found.
DEVWARE Team Logo
Morris M. | Softwareentwickler

Mehr zum Thema

Pfeil nach rechts (Verlinkung)
Präzise Zeitverarbeitung in .NET-Projekten mit NodaTime
03/2026

Präzise und sichere Zeitverarbeitung in .NET-Projekten

Blauer Pfeil nach rechts (Verlinkung)
C# 14 neue Sprachfeatures: Extension Members und field-Keyword in .NET 10
02/2026

C# 14 Sprachfeatures: Extension Members & field-Keyword

Blauer Pfeil nach rechts (Verlinkung)
Blazor und TypeScript gemeinsam einsetzen
02/2026

Blazor mit TypeScript: Integration & Best Practices

Blauer Pfeil nach rechts (Verlinkung)
API Architektur mit .NET
02/2026

API-Architektur mit .NET

Blauer Pfeil nach rechts (Verlinkung)
Devware GmbH verpflichtet sich, Ihre Privatsphäre zu schützen. Wir benötigen Ihre Kontaktinformationen, um Sie bezüglich unserer Produkte und Dienstleistungen zu kontaktieren. Mit Klick auf Absenden geben Sie sich damit einverstanden. Weitere Informationen finden Sie unter Datenschutz. Ihre Daten behandeln wir vertraulich. Versprochen.
Vielen Dank für Ihr Vertrauen.
Unser Team prüft Ihre Anfrage sorgfältig und meldet sich in der Regel innerhalb von 48 Stunden bei Ihnen zurück.
Falls es besonders eilig ist, erreichen Sie uns auch telefonisch:
+ 49 (0) 202 478 269 0.
Da ist etwas schief gegangen beim Absenden des Formulars.