相关疑难解决方法(0)

LINQ to Entities不支持指定的类型成员"Date".仅初始化程序,实体成员和实体导航属性

Entity Framework中使用此代码我收到以下错误.我需要获取特定日期的所有行,采用DateTimeStart此格式的DataType类型2013-01-30 12:00:00.000

码:

 var eventsCustom = eventCustomRepository.FindAllEventsCustomByUniqueStudentReference(userDevice.UniqueStudentReference)
                    .Where(x =>  x.DateTimeStart.Date == currentDateTime.Date);
Run Code Online (Sandbox Code Playgroud)

错误:

base {System.SystemException} = {"The specified type member 'Date' is not supported in LINQ to Entities. Only initializers, entity members, and entity navigation properties are supported."}
Run Code Online (Sandbox Code Playgroud)

任何想法如何解决它?

linq linq-to-entities entity-framework-4

124
推荐指数
7
解决办法
9万
查看次数

使用Linq查询仅将日期与DateTime字段进行比较

我只需要在涉及datetime字段的Linq查询中仅比较日期.但是,下面的语法会导致以下错误消息

The specified type member 'Date' is not supported in LINQ to Entities. Only initializers, entity members, and entity navigation properties are supported.

有谁知道如何从datetime字段中提取日期?

var duplicate = from a in _db.AgentProductTraining
                where a.CourseCode == course.CourseCode &&
                a.DateTaken.Date == course.DateTaken.Date &&
                a.SymNumber == symNumber
                select a;
Run Code Online (Sandbox Code Playgroud)

linq datetime entity-framework entity-framework-4

10
推荐指数
3
解决办法
2万
查看次数

在Linq中检查两个日期是否相等的优雅解决方案(其中第二个日期不是参数)

我需要检查Linq查询中两个日期是否相等,日期来自两个不同的表(不作为参数).我已经在网上和SO中查看了现有的解决方案.有些不适用于我的情况,有些不优雅.如果有的话,只是寻找更好的替代解决方案.

示例查询(需要仅比较日期部分):

var query = from t1 in Table1
            join t2 in Table2 on t1.Id equals t2.ForeignKeyId
            where t1.Id = someId
               && t1.Date1.Date.Equals(t2.Date2.Date)
Run Code Online (Sandbox Code Playgroud)

这个失败并出现错误"LINQ to Entitiies不支持''Date'.仅支持初始值设定项,实体成员和实体导航属性"

LINQ to Entities不支持帖子'Date'.仅支持初始化程序,实体成员和实体导航属性,该解决方案分别比较日,月和年.我试图将它包装成扩展方法,但似乎Linq也不喜欢扩展方法.由于第二个日期不是变量,我不能使用链接帖子中提到的其他解决方案(由于某种原因,我不能在Linq内部的日期调用"AddDays"方法).Linq中的Date API看起来有很多限制.

c# linq datetime entity-framework linq-to-sql

9
推荐指数
1
解决办法
5066
查看次数

使用DbFunctions截断DateTime时出错

我正在尝试仅按日期进行数据过滤(截断时间).数据库中的字段是DateTime.

作为参考,我尝试了这个不起作用的解决方案: LINQ to Entities不支持"Date".只支持初始值设定项,实体成员和实体导航属性 ,我应该使用由DbFunctions替换的EntityFunctions,但是,它仍然无效.

所以我搜索更多试图找到一些看起来像我的代码,然后我发现了另一个链接:使用DbFunctions我得到错误:LINQ to Entities不支持指定的类型成员'Date' 但我仍然得到同样的错误:

LINQ to Entities不支持指定的类型成员"Date".仅支持初始值设定项,实体成员和实体导航属性.

有什么建议吗?

我的代码:

var data = DateTime.Now.Date;
PostVisualizacoes visualizacao = db.PostVisualizacoes.Where(v => v.UsuId == usuario.UsuId && v.PosId == post.PosId && DbFunctions.TruncateTime(v.PosVisData.Date) == data).FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

c# entity-framework date

2
推荐指数
1
解决办法
692
查看次数