关于时间Null被转化成"0001-01-01 08:00:00"的问题
数据库中Table表的Time字段为可为空的Datetime格式.
当从数据库中查出该表到一个DateSet里.
空的数值全部转化为 "0001-01-01 08:00:00 "
关键的问题是,这种情况只在客户那边出现了.在公司的环境下,DateSet里的该字段仍然为 "Null ".
------解决方案--------------------用case when吧
Time=case when Time = ' ' then '1973-01-01 ' when Time <> ' ' then Time end
------解决方案--------------------0001-01-01 08:00:00?是 0001-01-01 00:00:00 吧...8点怎么出来的?
这是 DateTime.MinValue 不是 null...值类型不可为 null...只有可为空泛型类型才可以赋空值...注意 2.0 以上才支持...
如...
Nullable <DateTime> d = null;
or
DateTime? d = null;
------解决方案--------------------WebService会将DataSet中的值转化成为.NET的类型再发送。转化过程中,就会出现空值被转化为“最小值”(如果该类型不可为空)。你可试试看使用 "Time> "+DateTime.MinValue.ToString()来选择需要的数值。