Преобразование плоских данных в иерархический класс C # - PullRequest
0 голосов
/ 08 мая 2018

Мне интересно получить иерархическую структуру этих классов

class Tree {
    public string Name { get; set; }
    public string Parent { get; set; }
}

Я собираю данные в список объектов Class Tree

List<Tree> tree = new List<Tree>();

Один из этих объектов не имеет родителя. И, в конце, получите что-то вроде этого:

Name    |   Parent
C:\     |   <null>
System  |   C:\
Prog    |   C:\
Win     |   System

Как лучше преобразовать эти данные в такой класс и получить только один основной объект класса каталога, который не содержит Parent.

class Directory {
    public string Name { get; set; }
    public List<Directory> SubDirs { get; set; }
}

Кроме того, есть какой-то простой способ создать список путей для этого объекта. Что-то вроде этого

C:\System
c:\Prog

Заранее спасибо.

...