Deklarieren einer Eigenschaft mit Fragezeichen
-
Hallo,
mir ist folgende Syntax mit dem Fragezeichen voellig unbekannt:
private DateTime? Today { get; set; }
Es handelt sich um C# mit dem .Net Framework 3.5
Was bedeutet es, den Typ DateTime mit Fragezeichen anzugeben?
-
Das ist eine Abkürzung für die generische Nullable<T>-Struktur, d.h. der Wert kann zusätzlich auch 'null' sein.
Wird häufig im Zusammenhang mit Datenbanken verwendet, da diese auch 'null' speichern können.
-
DateTime?
ist gleich bedeutend mitNullable<DateTime>
Dieses Konstrukt wird verwendet um auch für value-types, die eigentlich nichtnull
sein könnennull
angeben zu können.Das ganze wird meines Wissens nach z.B. im Zusammenhang mit Datenbanken verwendet.
-
Ahaa, ja vielen Dank!