Как мне получить пути до подразделений?
У меня есть список подразделений:
var departments = await _departmentClient
.Get( subjects.Select( subject => subject.Department.Id ) );
и список родителей:
var parentDepartments = await _departmentClient
.GetByChildrenIds( subjects.Select( subject => subject.Department.Id ) );
мне нужно сгруппировать подразделения таким образом:
map[department]{parentDepartments}
т.е какой-то словарь, ключом которого, является подразделение-ребенок, а в значениях - родители, но я как-то не понимаю, как это сделать
я попытался сделать join:
from d in departments
join p in parentDepartments
on d.ParentDepartment?.Id equals p.Id into parentJoin
from parent in parentJoin
select new { Department = d, ParentDepartment = parent };
но проблема в том, что я смогу лишь получить одно подразделение-родителя, а остальные пропадут
наверное, как-то рекурсивно нужно, но я не понимаю. Подскажите, пожалуйста
Источник: Stack Overflow на русском