У меня есть текстовый файл, который выглядит следующим образом:C# алгоритм генерации иерархии
{ Id = 1, ParentId = 0, Position = 0, Title = "root" }
{ Id = 2, ParentId = 1, Position = 0, Title = "child 1" }
{ Id = 3, ParentId = 1, Position = 1, Title = "child 2" }
{ Id = 4, ParentId = 1, Position = 2, Title = "child 3" }
{ Id = 5, ParentId = 4, Position = 0, Title = "grandchild 1" }
Я ищу родовой C# алгоритма, который будет создавать иерархию объектов из этого. Функция «Иерархия», если хотите, превращает эти данные в иерархию объектов.
Любые идеи?
редактировать Я уже разобран файл в объекты .NET:
class Node
{
public int Id { get; }
public int ParentId { get; }
public int Position { get; }
public string Title { get; }
}
Теперь мне нужно на самом деле расположить объекты в графе объектов.
У Вас уже есть код, обрабатывающий разбор этого текстового файла? – pbz
Я не вижу, что делает элемент {Id = 5 ...} внуком. У внука должен быть один из детей в качестве его родителя, но у него такой же родитель, как и у всех других детей. Должен ли его ParentId быть 2, 3 или 4? Я также не понимаю, для чего вам нужно «Положение». Возможно, это относится к упорядочению детей в порядке слева направо, и вам нужно указать это явно? – AHelps
Я бы предположил, что свойство position задает детям каждого родителя. – mquander