GBaseDateTime 数据类型支持 GBase 数据库支持的相同日期值,缺省情况下GBaseDataReader.GetValue()方法会为有效日期值返回一个.NET DateTime 对 象,并且会为无效日期返回一个错误。可以更改这个缺省方式,让 GBaseDataReader.GetValue() 对于无效日期也返回一个 GBaseDateTime 对象。
要想使 GBase ADO.NET 为无效日期也返回一个 GBaseDateTime 对象,需要 在连接字符串中增加下面的键/值对:
Allow Zero Datetime=True
注意:使用 GBaseDateTime 类仍然可能产生问题,下面有一些结论:
无效日期的数据绑定仍然可能产生错误(0000-00-00 零日期不会产生 错误),如:2012-13-35;
ToString 方法返回按标准 GBase 数据库格式处理的日期(例如, 2005-02-23 08:50:25),这与.NET DateTime 类的 ToString 不同;
GBaseDateTime 类支持 NULL 日期,但是.NET DateTime 类不支持。如 事先不检查 NULL 就把一个 GBaseDateTime 转换为一个 DateTime 时, 会产生错误。
原创文章,作者:kirin,如若转载,请注明出处:https://blog.ytso.com/tech/bigdata/317754.html