存储在datatable ado.net中时,date会转换为datetime格式

时间:2013-11-11 09:45:36

标签: c# datetime dataset

我编写的存储过程只返回日期而不是日期时间,即

的currentdate 2013年10月6日

因此,当我使用da.fill()方法将此结果存储在数据集中时,在数据表中,它以datetime格式存储,结果为2013-10-06 12:00:00

如何解决这个问题?

4 个答案:

答案 0 :(得分:3)

谢谢大家,最后我采用了这种方法

                foreach (DataRow dr in dt.Rows)
                {
                    dr["date"] = DateTime.Parse((dr["date"].ToString())).ToShortDateString();
                }

只返回没有时间的日期。

答案 1 :(得分:1)

日期时间始终以默认时间值存储为“12:00:00”,您只能将其格式化为您想要的格式,

ds.Table[0].rows[0][0].tostring("yyyy-MM-dd")

答案 2 :(得分:0)

您可以将DateTime字符串格式化为仅显示日期。由于.NET没有Date-Only数据类型,因此必须从DateTime对象中过滤Date。 选择ToShortDateString()方法,如果您需要特殊格式,则必须使用ToString()方法并提供格式字符串,如果您谷歌搜索“日期时间格式”,则可以轻松找到该格式字符串。

答案 3 :(得分:0)

SqlDateTime课程可能会有所帮助