asp.net mvc 5 的面包屑导航

Breadcrumbs with asp.net mvc 5

我正在尝试为我的应用程序提供面包屑导航。我有 3 个控制器 - 项目、任务和任务详细信息。

我需要显示类似

的面包屑

项目 > 项目详细信息 > 任务 > 任务详细信息

下面是我的Mvc.sitemap文件

<?xml version="1.0" encoding="utf-8" ?>
<mvcSiteMap xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-4.0"
            xsi:schemaLocation="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-4.0 MvcSiteMapSchema.xsd">

  <mvcSiteMapNode title="Projects" controller="Project" action="ProjectList">
    <mvcSiteMapNode title="Project Details" controller="Project" action="Details"/>
  </mvcSiteMapNode>
</mvcSiteMap>

我的项目负责人

public ActionResult ProjectList()
{
 ///logic to show all projects list
}

public ActionResult Details(int id)
{
 ///logic to show details of a project
}

这是我的任务控制器

public ActionResult TaskList(int projectId)
{
 ///logic to show all tasks of the selected project
}

public ActionResult TaskDetails(int id)
{
 ///logic to show details of a task
}

当我导航到 ProjectList 操作方法时,我得到面包屑

 Projects

但是当我导航到详细信息(在项目控制器中)时,我什至没有看到面包屑

请帮助我我做错了什么。

谢谢 塔拉克

看起来您的 "Projects" mvcSiteMapNode 中有 "Project Details" mvcSiteMapNode。

将您的 MVC.sitemap 代码更改为此。

<?xml version="1.0" encoding="utf-8" ?>
<mvcSiteMap xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-4.0"
            xsi:schemaLocation="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-4.0 MvcSiteMapSchema.xsd">

  <mvcSiteMapNode title="Projects" controller="Project" action="ProjectList"/>
  <mvcSiteMapNode title="Project Details" controller="Project" action="Details"/>
</mvcSiteMap>