2012-11-29 4 views
1

질문에 필드를 추가 : 우리가 LINQ 에 여러 필드에 GROUPBY을 만들 수있는 현재 - 내가LINQ는 + GROUPBY - 선택 쿼리에

같은 여러 필드의 뭔가가 그룹 원이

q = q.GroupBy(c => c.Id) 
    .Select(g => new View 
        { 
         Id = g.Key, 
         ENAME= string.Join(",", g.Select(x => x.CaseApprover).ToList()) 
        }); 

같은 LINQ 뭔가를

q = q.GroupBy(c => c.Id, c.name,c.age,c.dob) 

어떻게 선택 쿼리에 넣을 수 있습니까? 그래서 내가 선택한 쿼리에서 새로 추가 된 필드를 얻을 것이다.

+1

'q.GroupBy (c => 새 {c.Id, c.name, c.age, c.dob})'로 시작하는 ' –

+0

하지만이 코드를 사용하면 Id = g에 오류가 발생합니다. 키 "는 익명 # 1을 int로 변환 할 수 없습니다. –

+1

'Id = g.Key.Id' –

답변

1

이 시도 : 당신이 당신의 View 클래스에서 이러한 필드를 원하는 경우

q = q.GroupBy(c => new { c.Id, c.name,c.age,c.dob }) 
    .Select(g => new 
    { 
     Id = g.Key.Id, 
     ENAME= string.Join(",", g.Select(x => x.CaseApprover).ToList()), 
     Name = g.Key.name, 
     Age = g.Key.age, 
     Dob = g.Key.dob, 
    }); 

이 단지 추가, 익명의 유형을 반환합니다.