有时我们要对日期做加减运算,常用于where语句中:
//错误代码 Context.Article .Where(p => p.StartDate < DateTime.Now) .Where(p => p.StartDate.AddDays(p.Period) > DateTime.Now)
以上代码是程序员很自然的想法,可惜的是EF不支持AddDays方法。需要使用EntityFunctions:
Context.Article.Where(p => p.StartDate < DateTime.Now) .Where(p => EntityFunctions.AddDays(p.StartDate, p.Period) > DateTime.Now);