Может ли DateTime быть нулевым?
Возможный дубликат:
DateTime "null" значение
Можно ли установить для объекта datetime значение null?
Ответы
Ответ 1
DateTime
- это тип значения, который, как и int
и double
, не имеет значимого значения null
.
В VB.NET вы можете написать это:
Dim d As DateTime = Nothing
Но все это означает установить d
значение по умолчанию DateTime
. В С# эквивалентный код будет следующим:
DateTime d = default(DateTime);
..., что эквивалентно DateTime.MinValue
.
Тем не менее, существует тип Nullable<T>
, который используется для предоставления значения null
для любого типа значения T
, Сокращение для Nullable<DateTime>
в С# равно DateTime?
.
Ответ 2
DateTime? myDate = null;
Значок вопроса даст вам тип с нулевым значением. Тот, который может быть установлен как его собственное значение, так и null.
DateTime
сам является типом значения. Он не может быть нулевым.
Ответ 3
Нет, вы не можете использовать для DateTime
тип значения.
Возможно, вы захотите посмотреть Nullable<DateTime>
(или коротко DateTime)
Ответ 4
Нет, его структура не является классом. Либо сделайте его нулевым типом, например. System.DateTime? MyValue; или используйте System.DateTime.MinValue как часовое.
Ответ 5
Нет - DateTime - это структура в С#, а structs (типы значений) не могут быть нулевыми.
Однако вы можете использовать Nullable<DateTime>.
Ответ 6
Обычно DateTime не может быть нулевым, так как это тип значения, но с использованием оператора с нулевым значением, введенного в С# 2, вы можете выполнить этот