C# 使用MVC站点地图时,如何更改面包屑中的父项?

C# 使用MVC站点地图时,如何更改面包屑中的父项?,c#,asp.net-mvc,asp.net-mvc-4,mvcsitemapprovider,C#,Asp.net Mvc,Asp.net Mvc 4,Mvcsitemapprovider,嗨,我正在使用c#mvc MvcSiteMapProvider 我在mvc.sitemap文件中设置了一部分我的站点 <mvcSiteMapNode title="Reports" controller="Reports" action="Index"> <mvcSiteMapNode title="Directorates" controller="ReportsDirectorate" action="Index" key="ReportsDirectorate

嗨,我正在使用c#mvc MvcSiteMapProvider

我在mvc.sitemap文件中设置了一部分我的站点

<mvcSiteMapNode title="Reports" controller="Reports" action="Index">
      <mvcSiteMapNode title="Directorates" controller="ReportsDirectorate" action="Index" key="ReportsDirectorate">
        <mvcSiteMapNode title="Divisions" controller="ReportsDirectorate" action="Directorate" key="ReportsDirectorateDirectorate" preservedRouteParameters="id">
           <mvcSiteMapNode title="Teams" controller="ReportsDirectorate" action="Division" preservedRouteParameters="id,divisionId">
              <mvcSiteMapNode title="Team" controller="ReportsDirectorate" action="Team" preservedRouteParameters="id,divisionId,teamId"/>
           </mvcSiteMapNode>
        </mvcSiteMapNode>
      </mvcSiteMapNode>

    </mvcSiteMapNode>
我试图影响这个节点的标题,它基本上是ParentNode的父节点,用于breadcrumb

<mvcSiteMapNode title="Divisions" controller="ReportsDirectorate" action="Directorate" key="ReportsDirectorateDirectorate" preservedRouteParameters="id">

你是怎么做到的? 谢谢
Richard

在控制器内,您可以访问任何具有更高压力的节点

 MvcSiteMapProvider.SiteMaps.Current.CurrentNode.ParentNode.ParentNode.Title = team.Division.Directorate.Name;

如果您想使用相同的操作,但可能会根据路线值或其他参数使用不同的标题,则此功能也很有用。

您能否将解决方案与代码一起发布,以及您是如何使其工作的。请在问题中的操作中使用下面的代码,谢谢。我有两个不同地区的网站地图。它选择了错误的站点地图并为当前节点返回null,因此我要求提供代码。
 MvcSiteMapProvider.SiteMaps.Current.CurrentNode.ParentNode.ParentNode.Title = team.Division.Directorate.Name;