我有以下数据库表“日期”:
DateId Date
1 08/05/2012
2 08/01/2012
3 08/25/2012
4 08/15/2012
5 08/22/2012
.....
为了获取最近的日期,我使用以下表达式:
var recentDate = db.Date.OrderByDescending(d => d.Date).FirstOrDefault();
我如何使用recentDate 来使用lambda 表达式获取上一个日期或下一个日期?
当我尝试使用latestDate 时,我收到一条错误消息:
operator > cannot be applied to operands of type 'System.DateTime' and 'App.Models.Date
这是我在前一个日期尝试的:
var previous date = top10Date.Where(d => d.Date > latestDate).OrderBy(d => d.Date).FirstOrDefault();
上面的表达对吗?我怎样才能做到这一点?
最佳答案
您正在尝试将 DateTime 与 App.Models.Date 进行比较,但编译器不知道如何进行比较。
您可能正在尝试执行以下操作:
var previous date = top10Date.Where(d => d.Date > latestDate.Date).OrderBy(d => d.Date).FirstOrDefault();
关于C# 下一个和上一个日期的 Lambda 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12150298/