Набор данных и иерархические данные Как сортировать - PullRequest
0 голосов
/ 07 июня 2010

Это, вероятно, глупый вопрос, но я в это время врезался в стену с этим.

У меня есть некоторые данные, которые имеют иерархическую природу и находятся в наборе данных ADO.NEt. Первое поле - это идентификатор, второе - это имя, а третье - это идентификатор родителя.

ID NAME ID родителя
1 Обработка воздуха NULL
2 компрессора 1
3 двигателя 4
4 Компрессор 1
5 Мотор 2
6 Контроллер 4
7 Контроллер 2

Итак, дерево будет выглядеть следующим образом:

1- Обработка воздуха
4- Компрессор
6 - Контроллер
3 - мотор
2- Компрессор
7- Контроллер
5 - мотор

Что я пытаюсь понять, так это то, как получить набор данных в том же порядке, в каком они будут отображаться в древовидной структуре, что в данном случае является уровнями на соответствующих уровнях для узлов, а затем дочерних элементов соответствующие уровни, отсортированные по названию.

Это все равно, что привязать это к древовидной структуре, а затем просто пройтись по узлам, чтобы получить правильный порядок.

Будем весьма благодарны за любые ссылки или указания.

1 Ответ

0 голосов
/ 07 июня 2010

Я бы реорганизовал данные, чтобы они были более нормализованы, однако, если вам нужно работать с тем, что у вас есть, делайте вложенные для операторов (где первый ищет ноль в поле parentID. Если вы не знаете какНа многих уровнях глубина данных, это сделает вашу работу более трудной, но это можно сделать.

...