【发布时间】:2026-01-27 05:35:01
【问题描述】:
我有一个 MVC/ASP.NET Web 应用程序,用于跟踪员工信息,例如 StartDate,它是一个 DateTime 数据类型,表示特定员工在公司开始工作的时间。
我们还为在公司工作的员工颁发奖励,并希望按在公司工作 5、10、15、20、25、30 年以上的时间分组。
我如何编写一个 Linq 语句,该语句仅按在公司的时间已达到将收到“在公司的时间”奖?感谢您的帮助。
【问题讨论】:
-
您需要展示您尝试过的内容,提供一些示例代码。你有没有寻找答案,因为我很确定这已经被问过了?
-
@DavidG - 我一直在环顾四周,但没有找到可行的解决方案。我发现的那些要么专门用于 SQL(并且无法转换为 linq),要么不适用于之前设置的静态间隔。我拥有的唯一示例代码是查询数据上下文以获取公司内活跃的人员 (!EndDate.HasValue),并按 StartDate 分组。我以前做过很多分组,只是以前没有这样的集合数据。
-
@Nkosi - 抱歉,我的情况略有不同,因为我只想对那些特别适合该年份间隔的人进行独家查询。不是所有人。
-
分组后过滤
-
第一个缩小分组范围的过滤器是那些开始日期早于 5 年的人,然后按您的时间间隔开始分组
标签: c# asp.net sql-server linq