LINQ查询和日期时间

时间:2010-05-31 17:19:41

标签: c#-3.0 linq-to-objects

我正试图通过下一个查询从Sum()获取Entityset<MyObject>

(from MyObject p in SelectedObject.MyObjectEntitySet
where p.AColumn.HasValue && 
p.ADate >= dateTimeValue &&
p.ADate <= dateTimeValue2
select p.AColumn.Value).Sum();

没有运气检索正确的金额。

任何想法?

[编辑]好的工作!

2 个答案:

答案 0 :(得分:0)

您可以通过将查询分解为组成部分并检查每个部分的输出来解决查询问题:

var entitySet = SelectedObject.MyObjectEntitySet;
var entitySetWithValues = entitySet.Where(p => p.AColumn.HasValue);
var entitySetGreater = entitySetWithValues.Where(p => p.ADate >= DateTimeValue);

......等等。

答案 1 :(得分:0)

如果看到重载列表,则Sum方法超过数值(decimal,float,int,double,long等)。选择器必须是一个采用DateTime并返回数值的函数。

[编辑] 对不起,我没有意识到AColumn是数字。