【发布时间】:2015-08-19 13:22:53
【问题描述】:
我有一个 asp.net 应用程序,其中我有一个文本框来输入日期时间值,它保存在数据库中。
现在,当我尝试检索日期时,如果日期为空,它会显示 1/1/0001 12:00:00 AM。
this.FirstReceivedDate = DateTime.Parse(dr["FirstReceivedDate"].ToString());
抱歉,要求已更改。现在,如果 FirstReceivedDate 为空,我想显示空白 ('')。
我该怎么做?
【问题讨论】:
-
它在数据库中实际上是空的吗?
-
DateTime.Parse()如果是来自数据库的DBNull.Value,则会抛出异常。我怀疑你在实际的数据库表中有那个底线日期时间..?请验证。 -
我不相信数据库中的数据与您认为的相符。我无法使用
null、空字符串等值重现这种情况。请验证dr["FirstReceivedDate"].ToString()返回的内容。 -
请注意,
FirstRecievedDate应该是数据库中的Date类型列。在这种情况下,您不需要解析它。只需使用this.FirstReceivedDate = = dr.Field<DateTime>("FirstReceivedDate"); -
是的,它在数据库中为空。此外,该字段是数据库中的日期时间。
标签: c# asp.net .net datetime nullable