2011-01-05 6 views
0

StackOverFlow는 아래에서 LINQ를 구성하는 다른 게시물에서 도움을 받았습니다. 두 번째 조건을 적용하고 두 번째 테이블에 조인하도록 LINQ를 수정하려면 어떻게해야합니까? 두 번째 조건은 조건이 두 번째 테이블의 열을 볼 것입니다.LINQ를 사용하여 평균 가져 오기 및 여러 테이블 조인

var ratingAverage = ctx.Rates.Where(r => r.Id == Id) 
    .GroupBy(g => g.Id, r => r.Rating) 
    .Select(g => new { Id = g.Key, Rating = g.Average() }); 

위의 LINQ는 Id에 따라 평균 및 그룹을 얻습니다. I.E., 나는 사람들 표를 가지고있다. Person 테이블을 LINQ에 포함시키고 Where 조건을 필터링하여 PersonId를 필터링하려고합니다. Rating 테이블의 Id는 People 테이블의 Foreign Key입니다.

도움을 주셔서 대단히 감사드립니다.

답변

0
int ratingId = 1; 
int personId = 9; 

var ratingAverage = ctx.Rates.Where(
    r => r.Id == ratingId && r.Person.Id == personId) 
    .GroupBy(g => g.Id, r => r.Rating) 
    .Select(g => new { Id = g.Key, Rating = g.Average() }); 
관련 문제