2010-03-02 92 views
5

任何人都可以指出我正确的方向,我将如何去实现由数据库驱动的分级导航菜单?我不想在这里重新发明轮子,所以我想知道是否有一些事情已经完成。我知道asp.net中的Menu控件,但是从我认为它不适用于MVC。作为框架的一部分,是否有某些东西可以用于此目的?如果没有,那么可能有几个链接指向正确的方向?asp.net MVC数据库驱动导航菜单

谢谢。

回答

3

LBushkin的想法是一个很好的想法。对于如何从数据库发出<ul><li>标签,看看下面的博客文章:

ASP.NET MVC递归树视图助手
http://www.matthidinger.com/archive/2009/02/08/asp.net-mvc-recursive-treeview-helper.aspx

渲染使用ASP一个TreeView。 NET MVC框架 http://mikehadlow.blogspot.com/2008/10/rendering-tree-view-using-mvc-framework.html

我个人使用马特Hidinger的递归树视图助手的修改版本,并给它一对夫妇的IQueryable从我的数据库中。

+0

是否有任何代码从数据库中读取数据并使用LINQ to SQL或LINQ to ADO.Net实体填充树? – Tanmoy 2010-08-25 14:00:35

+0

@Tanmoy:看到这里... http://stackoverflow.com/questions/202912/hierarchical-data-in-linq-options-and-performance – 2010-08-25 20:06:01

2

您可能想要look at superfish - 这是一个jQuery兼容的菜单控件,灵活并使用语义标记。您可以通过发出适当的<ul><li>标签来设置菜单。它们甚至可以通过在其他列表中嵌套列表来嵌套来创建分层菜单。

它不直接与数据库表示接口 - 但很容易将这样的结构发布为标记,并将其应用于超级鱼。