我只需要将用户输入的日期与存储在我的数据库中的 DateTime
进行比较 . 我试过将 DateTime
转换为 Date
,如下所示:
select CONVERT(date, startdate) from myTable
但是,当信息显示在我的 GridView
中时,日期仍然存在时间 . (显示的时间是12:00:00 . )当从数据库中提取信息或将 Date
与 DateTime
进行比较时,如何将 DateTime
转换为 Date
?为什么还有时间显示,即使我将 DateTime
转换为 Date
?
**更新
值得注意的是,我可以在SQL Server Management Studio中运行填充我的 GridView
的查询,并且显示的结果是我所期望的 - 没有时间在日期中 . 我认为问题必须在VB.NET中......
**更多信息
我让用户填写一个表单,用于在数据库中搜索相关结果 . 但是,就目前而言,没有返回任何结果,因为用户在表单上的 Date
字段中输入了正常日期,而数据库中的字段是 DateTime
. 这就是为什么我需要知道如何转换它 .
**请求的信息
这是我正在使用的查询:
select convert(date, startdate) as startdate, CONVERT(date, completedate) as completedate
from myTable
以下是SQL Server Management Studio中的结果集(无时间):
这是网格中的结果集(显示时间):
我显然忽略了数据库中的信息,但显示的信息是我所担心的 . 我不得不省略机密信息 .
1 回答
它将它作为.NET中的DateTime返回,它会自动添加时间 . 在进行显示时,只需在VB.NET中进行转换即可 . 例如,如果你传递了你的视图模型,那么在你的Razor语法中你会做
vm.DateRetrieved.ToString("d")
https://msdn.microsoft.com/en-us/library/system.datetime.date(v=vs.110).aspx