Я пытаюсь получить команды, к которым принадлежит человек, используя этот запрос.Проблема в том, что он возвращает команды всех отделов команды, в которой находится человек (я получаю несколько одинаковых записей обратно).Я предполагаю, что мне нужно заменить .contains, но я не могу понять, чем, поскольку я полный новичок, и я не могу найти никаких полезных примеров с двойным объединением.Что я должен изменить, чтобы заставить его работать как задумано?Заранее спасибо.
public IQueryable<Team> GetTeamsByPersonID(int id)
{
return from t in entities.Teams
join d in entities.Departments
on t.TeamID equals d.TeamID
where (from p in entities.Person_Departments
join dep in entities.Departments
on p.DepartmentID equals dep.DepartmentID
where p.PersonID == id
select dep.TeamID).Contains(d.TeamID)
select t;
}