如何检查日期是00:00:00

时间:2013-02-12 20:29:56

标签: vb.net

我有一张桌子,我正在寻找DeliveryDate,但有些记录没有DeliveryDate所以VB认为这是00:00:00。

如何制定IF条件来检查日期并查看它是否为00:00:00? 因为我想在日期为空(00:00:00)时将变量设置为 TRUE

3 个答案:

答案 0 :(得分:3)

您希望检查日期是否已分配给Nothing,在这种情况下,默认为Date.MinValue。快速而肮脏的方法是检查:

If DeliveryDate = Date.MinValue Then

它适用于午夜发送的套餐,因为您不可能在公元前1年安排任何套餐。

正确的方法是DeliveryDate类型为Nullable(Of Date),因此您实际上可以在其中存储Convert.DBNull(= Nothing)。在这种情况下,代码变得更容易阅读:

If DeliveryDate Is Nothing Then

请注意,您可以在开头使用类似的行(DeliveryDate类型为Date):

If DeliveryDate = Nothing Then

但是,您宁愿避免将Nothing隐式转换为Date.MinValue,这种情况会在这种情况下发生在幕后,即使它看起来像{{1}一样可读}。

答案 1 :(得分:1)

您可以检查您的日期是否等于日期部分:

If DeliveryDate.Date = DeliveryDate Then ...

答案 2 :(得分:0)

我个人使用New Date但它是一种风格选择 - 您也可以使用Nothing。

If DeliveryDate = New Date Then 

If DeliveryDate = Nothing Then