LINQ to Entities 不支持“日期".仅支持初始值设定项、实体成员和实体导航属性 [英] 'Date' is not supported in LINQ to Entities. Only initializers, entity members, and entity navigation properties are supported
问题描述
我正在尝试执行以下代码并收到错误
I am trying to execute the following code and am receiving an error
public List<Log> GetLoggingData(DateTime LogDate, string title)
{
var context = new LoggingEntities();
var query = from t in context.Logs
where t.Title == title
&& t.Timestamp == LogDate
select t;
return query.ToList();
}
我收到的错误是LINQ to Entities 不支持指定的类型成员‘Date’.仅支持初始值设定项、实体成员和实体导航属性."我尝试了各种尝试将 everythign 转换为字符串,只比较日期部分,但似乎无法获得正确的组合.非常感谢任何帮助.
The error I'm receiving is "The specified type member 'Date' is not supported in LINQ to Entities. Only initializers, entity members, and entity navigation properties are supported." I have tried various attempts of casting everythign to a string, only comparing the date part, but can't seem to get the right combinaation. Any help is greatly appreciated.
推荐答案
不是最好的解决方案,但它有效.由于各种原因,此时我必须使用 .net 3.5,修改数据库会很困难.无论如何,这是一个有效的解决方案:
Not the greatest solution, but it works. For a variety of reasons, I have to use .net 3.5 at this point and modifying the database would be difficult. Anyways, here is a solution that works:
var query = from t in context.Logs
where t.Title == title
&& t.Timestamp.Day == LogDate.Day
&& t.Timestamp.Month == LogDate.Month
&& t.Timestamp.Year == LogDate.Year
select t;
不是最优雅的解决方案,但很有效.
Not the most elegant solution, but it is effective.
这篇关于LINQ to Entities 不支持“日期".仅支持初始值设定项、实体成员和实体导航属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!