gpt4 book ai didi

c# - 使用 DbFunctions 截断 DateTime 时出现错误

转载 作者:行者123 更新时间:2023-12-01 22:01:40 25 4
gpt4 key购买 nike

我试图仅按日期过滤数据(截断时间)。数据库中的字段是DateTime。

作为引用,我尝试了这个解决方案,但不起作用: 'Date' is not supported in LINQ to Entities. Only initializers, entity members, and entity navigation properties are supported我应该使用被DbFunctions替换的EntityFunctions,但是,它仍然不起作用。

所以我进行了更多搜索,试图找到一些看起来像我的代码,然后我找到了另一个链接:Using DbFunctions I get error: The specified type member 'Date' is not supported in LINQ to Entities但我仍然遇到同样的错误:

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

有什么建议吗?

我的代码:

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();

最佳答案

如果从 PosVisData 属性中删除 .Date 调用,则可以避免该异常:

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

DateTime 属性中提取日期部分是 TruncateTime 的工作静态方法。

关于c# - 使用 DbFunctions 截断 DateTime 时出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35412706/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com