Sebastian
Sebastian

Reputation: 4811

Find Sum of product of 2 columns in LINQ

Find sum of product of 2 columns in LINQ

I have a list of educationprogram objects with 2 properties NOOfPerson & Hours.

I want a sum of product of 2 properties

SUM[NOOfPersons*Hours] 

How can I write a LINQ query for this?

List<educationprogram> edu = (from e in dbContext.educationprograms
                              where e.YearId == 2015
                              select e).ToList();

This returns the list of object I have to use. But how can I return SUM[Col1*Col2]?

Upvotes: 4

Views: 2012

Answers (2)

Sahi
Sahi

Reputation: 1484

var edu=  from e in dbContext.educationprograms
          where e.YearId == 2015
          select new
           {
             sum = e.NoofPersons*e.Hours
           }).ToList();

now edu is the list of products of noofperson column and hours column.

Upvotes: 0

Amir Popovich
Amir Popovich

Reputation: 29836

If the two columns are under the educationprograms table then:

var sum = dbContext.educationprograms.Sum(ep => ep.NoOfPeople * ep.Hours);

you can also add a Where clause:

var sum2 = dbContext.educationprograms.Where(e => e.Year == 2015).Sum(ep => ep.NoOfPeople * ep.Hours);

Upvotes: 11

Related Questions