gpt4 book ai didi

c# - 我如何仅在 LINQ 查询中的日期时间中的日期上使用 group by

转载 作者:行者123 更新时间:2023-12-04 23:19:53 26 4
gpt4 key购买 nike

我有这个 LINQ 查询

var data = (from orders in db.Orders
group orders by orders.OrderDate into dateGroup
select new OrderDateGroup()
{
OrderDate = dateGroup.Key,
OrderCount = dateGroup.Count()
}).Take(10);

orders.OrderDate 是 DateTime 但我只想根据日期进行分组

最佳答案

您可以使用规范函数:

group orders by EntityFunctions.TruncateTime(orders.OrderDate) into dateGroup

附加信息:
EntityFunctions方法被称为 规范函数 .这些是所有 Entity Framework 提供程序都支持的一组函数。这些规范函数将被转换为提供者的相应数据源功能。规范函数是访问核心语言之外的功能的首选方式,因为它们使查询保持可移植性。

您可以找到所有规范函数 here以及所有日期和时间规范函数 here .

另外,不要忘记包含 System.Data.Objects命名空间来自 System.Data.Entity.dll .

注:
如果您使用的是EF6,那么您必须考虑更改 EntityFunctions DbFunctions .并且不要忘记包括 System.Data.Entity命名空间来自 EntityFramework.dll .

关于c# - 我如何仅在 LINQ 查询中的日期时间中的日期上使用 group by,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30216179/

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