我使用实体SQL查询我的EDM,并且在我的DateTime值上损失了毫秒的精度.例如2011/7/20 12:55:15.333 PM更改为2011/7/20 12:55:15.000 PM.
我已经确认在sql中,毫秒记录是精确的.
我可以在.edmx XML文件中应用一个Precision属性,但是我不知道它需要什么样的值,
<Property Name="Timestamp" Type="DateTime" Nullable="false" Precision="???" />
有谁知道如何使用这个精度属性?
谢谢.
解决方法
这取决于sql Server版本…参见
http://seesharper.wordpress.com/2008/07/08/sql-server-datetime-vs-net-datetime-battle-of-accuracy/
如果是sql Server 2008,将DB中的数据类型更改为datetime2,然后从DB更新模型.
否则,您可以将精度设置为3(小数部分为3位,参见http://msdn.microsoft.com/en-us/library/cc716737.aspx).