csharp / intermediate
Snippet
Objektklassifizierung über Positionsmuster
Positionsmuster ermöglichen es, ein Objekt zu dekonstruieren und dessen Teile abzugleichen. Dies ist äußerst effektiv für zustandsbasierte Logik und ersetzt lange if-else-Ketten durch lesbare Switch-Ausdrücke.
snippet.cs
csharp
1
2
3
4
5
6
7
var result = person switch{("Admin", true) => "Full Access",("User", true) => "Standard Access",(_, false) => "Account Disabled",_ => "Unknown Role"};
Erklärung
1
("Admin", true) => "Full Access"
Trifft zu, wenn das dekonstruierte Objekt die Rolle 'Admin' hat und aktiv ist.
2
(_, false) => "Account Disabled"
Der Unterstrich (_) passt auf jede Rolle, solange die zweite Eigenschaft 'false' ist.