日期:2014-05-20  浏览次数:21001 次

Linq To Entity 中如何进行时间字段的比较计算?
Linq To Entity 中如何进行时间字段的比较计算?

数据库DB_Name,TB_Table表中有两个字段,一个A 字段,DateTime类型;一个B字段,int类型;

var R = DB_NameCtx.TB_Table.Where(t => (t.A - DateTime.Now).TotalDays < t.B )


结果报错:DbArithmeticExpression 参数必须具有数值通用类型。

------解决方案--------------------
db.Entity1Set.Where(x => System.Data.Objects.EntityFunctions.DiffDays(DateTime.Now, x.date) > -10).ToList().ForEach(x => Console.WriteLine(x.Id)); //间隔小于10天