Einzelnen Beitrag anzeigen

Benutzerbild von Phoenix
Phoenix
(Moderator)
Online

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 

Re: TreeView dynamisch aus einer Datenbank füllen

  Alt 9. Okt 2008, 16:28
Also ich würde hergehen, und mir zu jeder Kategorie die FAQ-Einträge dazujoinen...

also:
SQL-Code:
SELECT c.*, f.*
FROM Category c
LEFT JOIN FAQ f
ON f.CatdId = c.ID
ORDER BY c.PARENTID DESC, c.DESCRIPTION, f.HEADER
Damit hast Du alle Daten sortiert nach Ebenen in einem Dataset.
Das heisst, Du brauchst da nix rekursiv zu machen, und Du brauchst vor allem nicht für jede Ebene ein Statement abzufeuern.

Du läufst einmal durch das Dataset durch, legst pro Eintrag einen Node an (wenn es den Parent noch nicht gibt legst Du den neuen Node in einem temporären Array ab und hängst ihn dann ein, sobald Du den Parent angelegt hast). Du hast auch automatisch alle FAQ-Header dazu.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat