导航到子页面时,SiteMapPath breadcrump消失

时间:2014-01-18 02:39:53

标签: asp.net twitter-bootstrap visual-studio-2013 sitemappath

我的问题例子不可能更简单。 1-Open VS2013,启动一个新的ASP.NET 4.5 WebForms项目。 2 - 将SiteMapPath组件添加到母版页。 3 - 将std web.sitemap添加到项目中。

现在,创建父页面,子页面的任何层次结构,并查看面包屑如何从这些页面中消失。它最多显示在根节点(default.aspx页面)上,就是它。

这很令人沮丧,因为我使用SiteMapPath有较旧的项目(在VS2013中编译),而且痕迹导致效果很好。也许这个新的Bootstrap或V2013 ASP.NET模板正在做一些导致失败的事情。

请使用上面这个确切的例子,如果我已经成功完成了这个,请不要讨论我在其他帖子上看到的“相对路径”和“有效网址” - 我知道这一点,基本知识已经涵盖并且站点地图有效,因为ASP菜单在其层次结构中显示100%的页面。

由于 麦克

1 个答案:

答案 0 :(得分:0)

我似乎是唯一一个仍在使用新的.NET / VS项目的面包屑的人。

答案是从正常添加的站点地图文件中删除.aspx扩展名。即,新的VS ASP.NET项目/ NuGet包中较新的路由模型会从URL中删除它,而SiteMapPath将无法使用站点地图URL解析URL。您可以对抗它并更改我理解的路由定义,或者接受最佳做法,即不要让您的扩展程序显示并处理站点地图。

我选择使用无扩展名的网址,如果您有像我这样的大型站点地图文件,只需搜索并替换.aspx。