2010-03-02 10 views
5

Czy ktoś może wskazać mi w dobrym kierunku, aby jak pójdę o wdrażaniu hierarchiczne menu nawigacyjnego, który jest napędzany przez bazę danych? Nie chcę tu ponownie wymyślać koła, więc zastanawiałem się, czy jest coś, co już zostało zrobione. Jestem świadomy kontroli menu w asp.net, ale z tego co myślę, nie będzie działać z MVC. Czy jest coś, co zostało już dostarczone jako część struktury, którą mogę wykorzystać w tym celu? Jeśli nie, to może kilka linków do wskazania mi w dobrym kierunku?asp.net bazie MVC napędzany menu nawigacji

dzięki.

Odpowiedz

3

pomysł LBushkin jest dobry. Dla sposoby emitują <ul> i <li> znaczniki z bazy danych, spojrzeć na następujących blogach:

ASP.NET MVC rekurencyjne TreeView Helper
http://www.matthidinger.com/archive/2009/02/08/asp.net-mvc-recursive-treeview-helper.aspx

renderowania TreeView przy użyciu ASP. NET MVC Framework http://mikehadlow.blogspot.com/2008/10/rendering-tree-view-using-mvc-framework.html

osobiście używam zmodyfikowanej wersji rekurencyjnej TreeView Helper Matt Hidinger, a karmić kilka IQueryable s z mojej bazy danych.

+0

Czy istnieje kod do odczytu danych z bazy i wypełniania drzewo z LINQ do SQL lub LINQ do podmiotu ADO.Net? – Tanmoy

+0

@Tanmoy: Zobacz tutaj ... http: //stackoverflow.com/questions/202912/hierarchical-data-in-linq-options-and-performance –

2

Możesz chcieć look at superfish - jest to zgodny z jQuery menu sterowania, który jest elastyczny i używa semantycznych znaczników. Możesz menu po prostu emitując odpowiedni zestaw tagów <ul> i <li>. Mogą nawet zostać zagnieżdżone, aby utworzyć hierarchiczne menu, po prostu zagnieżdżając listy na innych listach.

Nie jest bezpośrednio powiązany z reprezentacją bazy danych - ale łatwo jest wyemitować taką strukturę w znacznikach jako znaczniki <ul> i zastosować do niej superadresy.