[英]Entity Framework - Precision in queries
与此问题非常相似: 为什么实体框架将参数作为DECIMAL(5,0)传递给使用NUMERIC(19)定义的列?
但是,给出的答案似乎与我的结果不一致。
我有一个OrderEntryTimeUtc datetime2(0)
列,表被分区。 现在,为了实际使用分区,我需要我的查询使用相同的类型和精度。
但是当我创建我的where子句时:
o.OrderEntryTimeUtc > dateStart
其中dateStart是一个DateTime,ms部分设置为0,我得到以下生成的参数:
@p__linq__2 datetime2(7)
@p__linq__2='2016-05-21 23:44:33'
如何强制EF发送datetime2(0)
? 或者如何在我的查询中添加CONVERT
而无需在SQL中编写整个查询或创建视图?
您可以使用modelBuilder
modelBuilder.Entity<YourEntity>()
.Property(p => p.OrderEntryTimeUtc)
.HasColumnType("datetime2")
.HasPrecision(0);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.