Rekursives hierarchisches übergeordnetes Kind

Ich habe eine Sammlung von Artikeln aus einer Datenbank, die eineparentid value oder null.

Hier ist mein Klassenentwurf:

public class Item
{
public int id{get;set;}
public string Name{get;set;}
public int? ParentId{get;set;}
public List<Item> SubItems{get;set;}
}

Ich möchte eine hierarchische Struktur von Elementen aus der Sammlung erstellen. Angenommen, eine Sammlung besteht aus 100 Elementen, aus denen ich die auf der ParentId-Zuordnung basierende Struktur erstellen muss.

Ich habe diesen Beitrag ausprobiertRekursive hierarchische Verknüpfungen in C # und LINQ aber es gibt mir einen Fehler, wenn ParentId null ist.

Auch ausprobiertErstellen Sie eine Liste der Baumtypen, indem Sie die Eltern-Kind-Beziehung rekursiv überprüfen. C # , aber diese lösung funktioniert auch bei mir nicht.

Wie erreiche ich das?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage