как пройтись циклом по искомому айди, зацепив связные id

Есть грубо говорят таблица, где находятся города в городе и страна(нет нормализации типу связности 1кМ) То есть, есть к примеру страна:

UK => Id = 1; 
London => Id = 2; ParentId = 1;
Richmond => Id = 3; ParentId = 2
Kew => Id = 4; ParentId = 3;

Сделал группировку по

ParentId => var locals = data.Value?
                         .GroupBy(x => x.ParentId.HasValue ? x.ParentId.Value : 0)
                         .ToDictionary(gg => gg.Key, gg => gg.ToList());

И в функцию, как параметр приходит ParentId = 3; как мне достать его из locals, таким образом, что бы создать "структуру"

- London
-- Richmond
--- Kew
- Birmingham

Ответы (0 шт):