【发布时间】:2012-04-17 12:35:32
【问题描述】:
我正在尝试在 ASP.NET MVC 3 上使用 LINQ 进行查询。
我有一个模型,我们称之为事件。此 Event 对象具有 DateTime? 的 Date 属性。我想要的是获取 2 个 TimeSpan 之间的事件。
现在我的代码如下所示:
TimeSpan From = new TimeSpan(8,0,0);
TimeSpan Until = new TimeSpan(22,0,0);
var events =
from e in db.Events
where e.Date.Value.TimeOfDay >= From,
e.Date.Value.TimeOfDay <= Until
select e;
抛出异常,告诉我“LINQ to Entities 不支持指定的类型成员 'TimeOfDay'。”
我无法解决这个问题,而且我整天都在尝试。请帮助我,我很沮丧。 :(
编辑:
我忘了在 e.Date.Value 之后在这里写“TimeOfDay”。无论如何,我在我的代码中做到了。
我不能使用 DateTime,因为我必须过滤在一天中的特定时间之间发生的事件,尽管事件的日期。
【问题讨论】:
-
您的示例代码甚至没有使用
TimeOfDay- 我假设实际上它使用了,而不是使用Date(根据您的代码)? -
为什么要使用两个 TimeSpan 对象而不是两个 DateTime 对象来过滤事件?
标签: sql-server asp.net-mvc linq entity-framework timespan