在LINQ中找出2列产品的总和
我有educationprogram
个对象列表,其中包含2个属性NOOfPerson
& Hours
。
我想要2个属性的产品总和
SUM[NOOfPersons*Hours]
如何为此编写LINQ查询?
List<educationprogram> edu = (from e in dbContext.educationprograms
where e.YearId == 2015
select e).ToList();
这将返回我必须使用的对象列表。但是如何返回SUM[Col1*Col2]
?
答案 0 :(得分:9)
如果两列在educationprograms
表下,则:
var sum = dbContext.educationprograms.Sum(ep => ep.NoOfPeople * ep.Hours);
您还可以添加Where子句:
var sum2 = dbContext.educationprograms.Where(e => e.Year == 2015).Sum(ep => ep.NoOfPeople * ep.Hours);
答案 1 :(得分:0)
var edu= from e in dbContext.educationprograms
where e.YearId == 2015
select new
{
sum = e.NoofPersons*e.Hours
}).ToList();
现在edu是noofperson列和小时列的产品列表。