【问题标题】:Validate and select entity set data in LINQ在 LINQ 中验证和选择实体集数据
【发布时间】:2026-01-05 23:40:01
【问题描述】:

我有一个实体集,其中包含 姓名, ID, 开始日期 结束日期。 我需要获取开始日期应大于“1-1-2014”且结束日期应为(开始日期 + 3 个月)的所有记录

是否可以使用单个 LINQ 查询来选择该记录。

提前致谢。

【问题讨论】:

  • 你的意思是结束日期应该比开始日期晚 3 个月吗?
  • var query = context.YourEntitySet.Select(x => x.start_date > new DateTime(2014, 1, 1)) && x.end_date == x.start_Date.AddMonths(-3)).ToList()
  • @chridam 我想你的日期搞错了
  • 是的。结束日期应大于 3 个月。这就是在 DB 中填充数据的方式。
  • @DavidG 哦,是的,为更正欢呼

标签: linq asp.net-mvc-4 c#-4.0 asp.net-web-api


【解决方案1】:
var date = new DateTime(2014, 1, 1);
var result = from r in db.Table
             where r.start_date > date
             && r.start_date.AddMonths(3) == r.end_date
             select r

【讨论】:

  • 谢谢。帮我很多。