csharp / intermediate
Snippet
Unveränderlichkeit mit C# Records
Records sind Referenztypen, die integrierte Funktionen zur Kapselung von Daten bieten. Sie verwenden wertebasierte Gleichheit und unterstützen zerstörungsfreie Mutation über den 'with'-Ausdruck.
snippet.csharp
1
2
3
4
public record Product(string Id, string Name, decimal Price);var original = new Product("A1", "Laptop", 999.99m);var discount = original with { Price = 899.99m };
Erklärung
1
public record Product(...);
Definiert einen positionellen Record mit Eigenschaften, die standardmäßig unveränderlich sind.
2
original with { Price = 899.99m }
Erstellt eine neue Instanz des Records mit einer oder mehreren geänderten Eigenschaften.