2014-01-27 1 views
-2

람다 식의 두 컬렉션에서 요소를 기준으로 두 개의 컬렉션을 그룹화하고 그룹화 할 수 있습니까?Linq : 람다 식을 사용한 조인 + 그룹화

예를 들어

: 컬렉션/테이블 (1) : 학생

StudentID StudentName 
1    X 
2    Y 

컬렉션/테이블 (2) : 표

StudentID Term  Subject  Mark 
    1   1  Math   100 
    1   1  Physics  90 
    1   2  Math   100 
    1   2  Physics  100 
    2   1  Math   95 
    2   1  Physics  85 
    2   2  Math   90 
    2   2  Physics  100 

은 그래서

StudentID  StudentName Term  Mark 
    1    X   1  190 
           2  200 
    2    Y   1  180 
           2  190 
를 포함하는 결과 수집이 필요

감사합니다.

+3

간단한 예를 보여주세요. 또한 무엇을 시도 했습니까? –

답변

1

Concat 또는 Union 메서드를 사용하여 두 개의 목록을 연결할 수 있습니다. 값을 복제하려면 Union을 사용하지 않는 경우 Concat을 사용하십시오. 그런 다음 GroupBy을 사용하여 특정 속성이나 키별로 결과를 그룹화 할 수 있습니다.

좋은 예제는 인터넷 또는 MSDN에서 찾을 수 있습니다.이 방법의 문서를 읽거나 자습서를 찾아보십시오.

0

당신은 같이 사용 Enumerable.Concat를 사용할 수 있습니다

var combinedandordered = foo.Concat(bar).OrderBy(it => it.param); 

이 후 .Join()을 사용할 수 있습니다.

관련 문제