In C# 3 wurden die Auto-Implemented Properties eingeführt. Auf Deutsch besitzen sie den wohlklingenden Namen Automatisch implementierte Eigenschaften. Sie werden so definiert:
public DateTime CreateDate { get; set; }
Dabei erstellt der Compiler im Hintergrund ein “unsichtbares” Attribut, welches einen etwaigen Wert enthält. Nun ist es aber unpraktisch, einer derartigen Eigenschaft einen Default-Wert zu verpassen:
public DateTime CreateDate { get; set; }
public Address()
{
CreateDate = DateTime.Now;
}
Mit C# 6 kann ein Default-Wert auch folgendermaßen gesetzt werden:
public DateTime CreateDate { get; set; } = DateTime.Now;
Das sieht schon mal ganz gut aus, funktioniert aber auch, wenn nur ein Getter vorhanden ist, der Wert also nicht verändert werden können soll (immutable):
public DateTime CreateDate { get; } = DateTime.Now;
In diesem Falle kann CreateDate
nicht verändert werden (außer im Konstruktor).
Viel Spaß!
Viele weitere Neuerungen finden sich in der C# 6 Serie.