2010-02-03 36 views
1

当我添加linq分组时,出现以下错误。获取linq错误组

错误5“System.Linq.IGrouping”不包含“描述”和没有扩展方法“说明”接受类型“System.Linq.IGrouping”的第一个参数的定义可以发现(你缺少using指令或程序集引用?)

using (var db = new DataContext()) 
{ 
    var query = from emp in db.Employees 
           .Where(e=> e.IsDeleted == false && e.DivisionId == divisionId) 
       from rev in db.Reviews 
           .Where(r=> r.EmployeeID == emp.EmployeeId && r.IsDeleted == false && r.ReviewPeriodId == reviewPeriodId) 
           .DefaultIfEmpty() 
       from obj in db.Objectives 
           .Where(o=> o.ReviewId == rev.ReviewId && o.IsDeleted == false) 
           .DefaultIfEmpty() 
       from objps in db.ObjectiveProgressStatusLanguages 
           .Where(s=> s.ObjectiveProgressStatusId == obj.ObjectiveProgressStatusId && s.LanguageId == langueageId) 
           .DefaultIfEmpty() 
       group objps by new {objps.Description, objps.StatusId into opsgroup 

       select new 
       { 
        Status = opsgroup.Description, 
        StatusId = opsgroup.StatusId, 
        Count = opsgroup.Count() 
       }; 
    return query.CopyToDataTable(); 

回答

1

这些领域应该是关键的组成部分。尝试将其更改为:

select new { 
     Status = opsgroup.Key.Description, 
     StatusId = opsgroup.Key.StatusId, 
     Count = opsgroup.Count() 
    } 
+0

谢谢,工作。 – 2010-02-03 17:33:25