为什么GetFieldValue为此DateTime返回null?
问题描述:
我有一个数据表,其数据被馈送到一类:为什么GetFieldValue为此DateTime返回null?
MyProperty = myDataRow.GetFieldValue("MyPropertyColumn", DataUtils.NullDateTime);
属性myProperty的是可为空的DateTime和列的值是:
'2010-09-27 00:00:00.000' AS 'MyPropertyColumn',
当调试器遍历上面的第一行代码,MyProperty在我期望从DataTable设置为DateTime时为空。有没有任何理由为什么这个日期没有被正确解析?
答
的列值需要传递在作为DateTime和不是字符串,从而:
CONVERT(DATETIME, '2010-09-27 00:00:00.000') AS 'MyPropertyColumn',
,因为这是一个字符串和NOT一个DateTime它受解析而这又取决于几个设置.. 。为什么你不使用DateTime? – Yahia 2012-02-24 16:15:52
表格列的类型是什么?它是像VARCHAR或日期类型的文本类型? – 2012-02-24 16:18:10
我将列的值切换到GETDATE(),它工作,所以它似乎是键入问题。然后,我将我的专栏设置为“CONVERT(DATETIME,'2010-09-27 00:00:00.000')”,并且工作正常。 – 2012-02-24 16:21:37