Mais
DataTime "null" valor
I'tenho procurado muito mas não consegui'não encontrei uma solução. Como você lida com um DateTime que deve ser capaz de conter um valor não-inicializado (equivalente a nulo)? Eu tenho uma classe que pode ter um valor de propriedade DateTime definido ou não. Eu estava pensando em inicializar o detentor da propriedade para DateTime.MinValue, que então poderia ser facilmente verificado. Acho que esta é uma pergunta bastante comum, como você faz isso?
261
3
Para o DateTimes normal, se você não't os inicializar, eles irão corresponder a
DateTime.MinValue
porque é um tipo de valor e não um tipo de referência.Você também pode usar um DateTime nulo, como este:
Ou a forma mais longa:
E, finalmente, há's uma forma construída para referenciar o padrão de qualquer tipo. Isto retorna
nulo
para tipos de referência, mas para o nosso exemplo DateTime, retornará o mesmo que `DateTime.MinValue':Se você're usar .NET 2.0 (ou posterior) você pode usar o tipo anulável:
ou
então mais tarde:
E você pode verificar o valor com:
Ou podes usá-lo como:
Você pode ler mais aqui:
http://msdn.microsoft.com/en-us/library/b3h38hb0.aspx
I'd considerar o uso de um tipos anuláveis.
"DateTime? myDate" em vez de "DateTime myDate".