0 Tage Serie
csharp / intermediate
Snippet

Objektauswertung mit Switch-Mustern

Switch-Ausdrücke kombiniert mit Eigenschaftsmustern bieten eine prägnante und lesbare Möglichkeit, Objektzustände auszuwerten und spezifische Werte zurückzugeben.

snippet.cs
csharp
1
2
3
4
5
6
7
8
9
public record User(string Name, int Rank, bool IsActive);
string GetAccessLevel(User user) => user switch
{
{ IsActive: false } => "No Access",
{ Rank: > 10 } => "Admin",
{ Rank: > 5 } => "Moderator",
_ => "Standard User"
};
Erklärung
1
user switch { ... }
Startet den Switch-Ausdruck zur Auswertung des User-Objekts.
2
{ IsActive: false } => "No Access"
Pattern Matching, das gezielt die IsActive-Eigenschaft prüft.