我有一個.sitemap文件,其中包含我想爲我的側面導航顯示的所有節點。當我到達子級別時,我無法顯示所有節點。當我訪問子頁面時,一切都消失了。換句話說,當我在homepage.aspx頁面中時,所有節點都可見。當我進入level1a.aspx頁面時,所有節點都消失了。我沒有背後的代碼。是否有顯示所有節點的設置?或者我需要編寫代碼來顯示它們全部?ASP.NET SiteMap顯示所有節點
以下是文件: 的web.config
<siteMap>
<providers>
<add name="SiteMap" type="System.Web.XmlSiteMapProvider" siteMapFile="~/my.sitemap" />
</providers>
</siteMap>
control.ascx
<asp:SiteMapDataSource ID="SiteMapDataSource1" SiteMapProvider="SiteMap" runat="server" />
<asp:Menu ID="Menu1" runat="server" DataSourceID="SiteMapDataSource1"></asp:Menu>
my.sitemap
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode url="/HomePage.aspx" title="Home Page" description="">
<siteMapNode url="/level1.aspx" title="Level 1" description="">
<siteMapNode url="/level1a.aspx" title="Level 1 A" description="" />
<siteMapNode url="/level1b.aspx" title="Level 1 B" description="" />
</siteMapNode>
</siteMapNode>
</siteMap>
嗯奇怪的。我將該控件放在主頁上,它只適用於HomePage.aspx,但不適用於子頁面。這是假設從母版頁繼承控件。我把另一個控件放在子頁面中,它就會出現。任何方式顯示側導航只有控制器放在MasterPage內? – Anna
啊!我發現它爲什麼不起作用!愚蠢的錯誤。我在我的母版頁的 asp:Content>中控制了內容,並且我的子頁面 asp:Content>覆蓋了站點地圖控件。感謝您的幫助,雖然= D –
Anna