使用MvcSiteMapProvider创建菜单

时间:2010-07-15 16:01:50

标签: asp.net-mvc sitemap controllers

很抱歉,如果这似乎是一个新手问题。 我正在尝试创建一个导航菜单,该菜单将显示在我的mvc网站的每个页面中。 我正在使用MvcSiteMapProvider,一般的想法是创建一个通用的ApplicationController,每个控制器都继承。

public abstract class ApplicationController : Controller
{
    public ActionResult SiteMap()
    {
        return View();
    }
}

然后创建一个部分/用户控件,可以使用html帮助器

<%=Html.MvcSiteMap().Menu("siteMap")%>

并在我的母版页中调用用户控件... 但我不知道如何将站点地图数据传递给局部视图。 请给我一些代码示例,让我开始,或者至少让我感觉不那么愚蠢......谢谢

2 个答案:

答案 0 :(得分:0)

public ActionResult SiteMap()
{
    //Do something to get the sitemap data
    var mySitemapData = CallToGetSiteMapData()
    return View(mySiteMapData);
}

答案 1 :(得分:0)

实际上,通过添加适当的dll引用并使用

来实现它
<%=Html.MvcSiteMap().Menu("siteMap")%> 

用于母版页中的菜单,但现在我想知道如何使菜单动态化,以便它显示两个级别的站点地图或更多