Sammlungen filtern mit LINQ
LINQ (Language Integrated Query) bietet eine leistungsstarke, deklarative Möglichkeit, Sammlungen zu bearbeiten. Auf mittlerem Niveau werden mehrere Operatoren verkettet, um Daten effizient zu tran…
Snippet öffnen →Lies diese C#-Snippets für Fortgeschrittene Zeile für Zeile — jedes kommt mit einer Erklärung, was der Code tut und warum.
LINQ (Language Integrated Query) bietet eine leistungsstarke, deklarative Möglichkeit, Sammlungen zu bearbeiten. Auf mittlerem Niveau werden mehrere Operatoren verkettet, um Daten effizient zu tran…
Snippet öffnen →Die Verwendung von async/await ermöglicht es der Anwendung, während I/O-gebundener Operationen reaktionsfähig zu bleiben, indem die Kontrolle an den Aufrufer zurückgegeben wird, während auf den Abs…
Snippet öffnen →Exception-Filter ermöglichen es, eine Ausnahme nur dann abzufangen, wenn eine bestimmte Bedingung erfüllt ist. Dies ist sauberer als Abfangen und erneutes Werfen, da der Stack nicht unnötig abgebau…
Snippet öffnen →Records sind Referenztypen, die integrierte Funktionen zur Kapselung von Daten bieten. Sie verwenden wertebasierte Gleichheit und unterstützen zerstörungsfreie Mutation über den 'with'-Ausdruck.
Snippet öffnen →Switch-Ausdrücke bieten eine prägnantere Syntax für Pattern Matching. Sie ermöglichen es, Objekteigenschaften direkt zu prüfen und einen Wert basierend auf dem ersten Treffer zurückzugeben.
Snippet öffnen →Indexer ermöglichen es, Instanzen einer Klasse oder Struktur wie Arrays zu indizieren. Dies ist nützlich für Klassen, die eine Datensammlung darstellen oder Zugriff auf interne Puffer bieten.
Snippet öffnen →Das IDisposable-Interface wird verwendet, um einen Mechanismus zum Freigeben nicht verwalteter Ressourcen bereitzustellen, wie z. B. Datei-Handles oder Datenbankverbindungen, die der Garbage Collec…
Snippet öffnen →Erweiterungsmethoden ermöglichen es, Methoden zu bestehenden Typen 'hinzuzufügen', ohne einen neuen abgeleiteten Typ zu erstellen oder den Originaltyp zu ändern. Sie werden als statische Methoden i…
Snippet öffnen →Die 'yield return'-Anweisung gibt an, dass die Methode ein Iterator ist. Sie liefert einen Wert an den Enumerator, ohne die gesamte Sammlung sofort im Speicher zu erstellen, was eine effiziente Ver…
Snippet öffnen →Generic Constraints ermöglichen es, die Typen einzuschränken, die als Argumente für einen Typparameter verwendet werden können. Durch 'where T : class, new()' stellen wir sicher, dass T ein Referen…
Snippet öffnen →