我正在使用EF来保存日期时间。
日期正在保存到数据库,但不是时间。我正在使用date
类型。但是,SSMS(2012 express)字段仅显示dd/MM/yyyy
(没有时间)
读它回来的内容如26/07/2014 00:00:00
我假设它显示的是00:00:00,因为它是如何保存的(尽管没有显示)。
要保存条目,我只是将DateTime分配给我的属性。
myEfModel.Date = DateTime.Now;
我也尝试过(确保数字位数不会使保存中的SQL混淆)
var timeNow = DateTime.Now;
timeNow.AddMilliseconds(-timeNow.Millisecond);
myEfModel.Date LastUsed = timeNow;
搜索SO显示大多数人声称they have no problems saving DateTime.Now via EF
为什么不节省时间?
答案 0 :(得分:7)
SQL Server 2012 中的DATE
数据类型专门保存仅日期(没有时间) - 它功能不是bug ....(DATE
数据类型是在SQL Server 2008中引入的,专门用于您只关心日期,例如"雇用日期"或类似的事情,当时间部分通常只会妨碍你。)
有关详细信息,请参阅SQL Serer联机丛书中的MSDN documentation Date and Time Data Types ....
如果您还需要时间,请在数据库表中使用DATETIME2(n)
(n
的值可以在0到7之间,并定义您需要的小数秒小数点; 0 =精度到秒,7 =精度到100ns)