csharp / intermediate
Snippet
Logikkapselung durch lokale Funktionen
Lokale Funktionen ermöglichen es, Methoden innerhalb des Gültigkeitsbereichs einer anderen Methode zu definieren. Dies ist nützlich für Hilfslogik, die für andere Klassenmitglieder nicht zugänglich sein sollte, was eine sauberere Kapselung fördert.
snippet.cs
csharp
1
2
3
4
5
6
7
8
9
10
11
12
public void ProcessData(IEnumerable<string> items){bool IsValid(string item) => !string.IsNullOrWhiteSpace(item) && item.Length > 3;foreach (var item in items){if (IsValid(item)){Console.WriteLine($"Processing: {item.Trim()}");}}}
Erklärung
1
bool IsValid(string item) => ...
Deklariert eine lokale Funktion, die nur innerhalb der ProcessData-Methode sichtbar ist.
2
if (IsValid(item))
Ruft die lokale Funktion auf, um eine Validierung durchzuführen, bevor das Element verarbeitet wird.