Frage

Angenommen wir eine Menu-Klasse haben, die Submenüs hat (die die gleiche Art von Menü ist daher Submenüs und Gegenstände haben) und Artikel (die einen anderen Typ hat) und wir sie in zwei Tabellen (eine für Menüs gespeichert und ein für Items). Gibt es eine Möglichkeit komplette grafische Darstellung der Menu-Klasse zu laden (alle seine Submenüs und Items) mit LINQ to SQL?

War es hilfreich?

Lösung

Wenn Sie die Beziehungen richtig in SQL definieren, LINQToSQL sollten Sie geben wieder alle Menüs / Elemente mit einer einzigen Abfrage auf Menüs. Dies wird jedoch nicht, es als Graph verwenden zurück, sondern als eine Aufzählung der Menüs (mit nahen stehenden Menüs und Optionen). Sie müßten durch diese Aufzählung wiederholen und die Grafik auf Ihrem eigenen zu konstruieren.

Auf der anderen Seite könnten Sie in der Lage, so etwas zu tun:

var roots = db.Menus.Where( m => !m.SubMenus.Count == 0 );

Dann roots würde eine Sammlung der Basismenüs sein. Dies könnte ausreichend sein, wenn Sie beabsichtigen, keine Graph-Analyse-Algorithmen auf, es auszuführen, sondern nur die Absicht, sie von oben nach unten zu durchqueren den GUI-Komponenten zu konstruieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top