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即可。