csharp / intermediate
Snippet
Datenvalidierung mit Eigenschaftsmustern
Eigenschaftsmuster ermöglichen es, die Eigenschaften eines Objekts direkt innerhalb eines Switch-Ausdrucks gegen spezifische Werte oder Bereiche zu prüfen. Dies bietet eine deklarative Möglichkeit, komplexe bedingte Logik basierend auf dem Objektzustand zu handhaben.
snippet.cs
csharp
1
2
3
4
5
6
7
8
9
public record User(string Name, int Age, bool IsActive);public string GetUserStatus(User user) => user switch{{ IsActive: false } => "Account Disabled",{ Age: < 18 } => "Minor Access",{ Name: "Admin" } => "Full Access",_ => "Standard User"};
Erklärung
1
{ IsActive: false } => "Account Disabled"
Trifft zu, wenn die Eigenschaft IsActive spezifisch falsch ist.
2
{ Age: < 18 } => "Minor Access"
Verwendet ein relationales Muster, um zu prüfen, ob die Eigenschaft Age kleiner als 18 ist.