我们有这样的情况:我们有一个带有Date列和单独的Time列的SQL Server 2005表。当我试图查询这个表,我想这样做下面的SQL相当于:实体框架和日期+时间算术
where Date + Time > @Something
一些背景信息 - 日期存储为一个00:00的时间部分的日期,并且时间存储为具有1900-01-01日期组件的时间 - 这意味着在SQL中将这两者结合在一起可以为您提供完整的日期时间。
我知道上面有索引含义,但这不是问题所在。
你如何在LINQ中对实体做这件事?
一些其他的事情需要注意:
- 更改数据库的架构是不可能的。
- 这是SQL 2005所以没有Time数据类型,也没有从EF返回的TimeSpan(我曾尝试更改EF模型以尝试将其投射到TimeSpan,但没有骰子)
- 我想尝试并坚持纯Linq-to-Entities并不会停止执行E-SQL /存储过程/ ExecuteQuery路由。
在LINQ到实体,你不能做这样的事情DateTime.Parse或加入红枣和日期一起。虽然可能的话,使用这样的单独调用并不是我正在寻找的;我想单个linq实体查询返回数据。 –
是只有一个查询。您只需准备好您需要的数据。如果这不是你想要的,我想知道为什么这对你来说是一个问题。 – LueTm