0

我的问题示例不能简单一些。 1-Open VS2013,启动一个新的ASP.NET 4.5 WebForms项目。 2-将SiteMapPath组件添加到主页面。 3将std web.sitemap添加到项目中。导航到子页面时,SiteMapPath breadcrump消失

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

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

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

感谢 迈克

回答

0

我似乎仍然使用与较新的.NET/VS面包屑的项目只有一个。

答案是从正常添加的站点地图文件中删除.aspx扩展名。也就是说,新的VS ASP.NET工程/ NuGet包中的新路由模型从URL中剥离了这个,而SiteMapPath将无法使用站点地图URL解析URL。您可以与之对抗并更改我理解的路由定义,或者接受最好不要让您的扩展程序显示和处理站点地图。

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