2015-08-06 2 views
0

Я хотел бы иметь один запрос LINQ to SQL для подсчета 2 сущностей из одной таблицы. Например. Количество сотрудников и менеджеров из таблицы Персонал.LINQ to SQL: строки в столбцы

Пример:

var q = from p in db.Personnel 
     where p.PersonType == 'Manager' || p.PersonType == 'Employee' 
     select new 
     { NoOfPersonnel = p.Count(p => p.PersonType == 'Employee'), //Wrong way 
      NoOfManagers = p.Count(p => p.PersonType == 'Manager') //Wrong way 
     } 

Как я могу это сделать?

ответ

0

Попробуйте это:

var list = from employee in db.Personnel 
      where employee.PersonType == "Manager" || employee.PersonType == "Employee" 
      group employee by employee.PersonType 
      into temp 
      select new { PersonType = temp.Key, Count = temp.Count() }; 
Смежные вопросы