【问题标题】:Create breadcrumbs Path in asp.net MVC在 asp.net MVC 中创建面包屑路径
【发布时间】:2013-08-23 12:19:19
【问题描述】:

我正在尝试创建包含用户查看的页面的面包屑, 比如这个例子:

首页 -> 产品 -> 智能手机 -> .....

有谁知道如何在带有剃刀视图引擎的 asp.net mvc 3 中做到这一点? 或者哪里可以找到好的教程?

【问题讨论】:

标签: asp.net asp.net-mvc mvcsitemapprovider


【解决方案1】:

有一个名为MvcSiteMapProvider 的开源项目,我一直在为它做出贡献,这让这变得相当容易。该项目在 NuGet 上可用。

基本上,您可以为所有页​​面配置站点地图。站点地图可以通过 XML、代码或其他数据源进行配置。然后站点地图被缓存并在用户之间共享。当用户导航到站点地图中配置的 URL(作为 URL 或作为路由值的字典)时,它将使用地图中的相对位置来确定如何将面包屑构建回您的主页。

这里有安装和使用其功能的演练:MvcSiteMapProvider 4.0 - A Test Drive

【讨论】:

    【解决方案2】:

    你见过MvcBreadCrumbs的开源解决方案吗?使用这个 Nuget 包有几种方法可以完成它。您可以像这样在控制器方法上使用属性:

    [BreadCrumb(Label="Widget")]
    public ActionResult ...
    

    或者如果标签依赖于数据,则可以选择添加一个静态方法调用来覆盖标签:

    [BreadCrumb(Label="Widget")]
    public ActionResult Get(int id)
    {
        [make db call]
        BreadCrumb.SetLabel(db.ItemDescription);
        return view(dbModel);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多