csharp / intermediate
Snippet
Fortgeschrittenes Property-Pattern-Matching
Property-Muster ermöglichen es, die Eigenschaften eines Objekts gegen spezifische Werte oder Bereiche zu prüfen. Dies ist sehr lesbar und ersetzt komplexe verschachtelte If-Anweisungen.
snippet.cs
csharp
1
2
3
4
5
6
7
8
9
public record User(string Name, int Age, bool IsAdmin);public string GetAccessLevel(User user) => user switch{{ IsAdmin: true } => "Full Access",{ Age: < 18 } => "Restricted Access",{ Name: "Guest" } => "Temporary Access",_ => "Standard Access"};
Erklärung
1
user switch { ... }
Startet einen Switch-Ausdruck, um das User-Objekt auszuwerten.
2
{ IsAdmin: true } => ...
Trifft zu, wenn die Eigenschaft IsAdmin genau true ist.
3
{ Age: < 18 } => ...
Verwendet ein relationales Muster, um zu prüfen, ob Age kleiner als 18 ist.