0

我现在的 linq 查询,

 return _db.Details
           .FirstOrDefault(c => c.Master.Id.Value == nId && 
                                c.Id == c.Master.Id && 
                                c.Alert.Va <= c.Va && 
                                DateTimeNowc.ValidityTill <= (EntityFunctions.AddHours(DateTime.UtcNow,5) &&
                                EntityFunctions.AddMinutes(DateTime.UtcNow,30)));

错误:

DateTime? EntityFunctions.Addminutes(DateTime?timevalue, int? addvalue) (+2 overload(s))

Invokes the canonical Add Minutes function. For Information about the canonical AddMinutes function, see Date and Time canonical Functions(Entity SQL).

在这里我得到线路错误在此处输入图像描述

4

2 回答 2

1
DateTimeNowc.ValidityTill <= (EntityFunctions.AddHours(DateTime.UtcNow, 5) &&
EntityFunctions.AddMinutes(DateTime.UtcNow, 30)));

您正在尝试&&在两个DateTime实例上执行。那是行不通的。

您应该将一个方法调用放在另一个中:

EntityFunctions.AddMinutes(EntityFunctions.AddHours(DateTime.UtcNow, 5), 30));
于 2014-02-26T08:15:53.637 回答
0

您的比较语法错误。如果您尝试比较时间是否 <= 5 小时 30 分钟,请尝试仅使用 AddMinutes()。

//5*60 minutes + 30 minutes
DateTimeNowc.ValidityTill <= EntityFunctions.AddMinutes(DateTime.UtcNow,330)));
于 2014-02-26T08:18:10.267 回答