C# 使用MVC站点地图时,如何更改面包屑中的父项?
嗨,我正在使用c#mvc MvcSiteMapProvider 我在mvc.sitemap文件中设置了一部分我的站点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
<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;