首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SiteMapPath在子页面上消失

SiteMapPath在子页面上消失
EN

Stack Overflow用户
提问于 2009-02-10 21:50:07
回答 3查看 2.6K关注 0票数 0

由于某种原因,我的SiteMapPath在我的页面上消失了。

站点结构:

代码语言:javascript
复制
WebApp
-Default.aspx
-> Reports\
----Default.aspx
----MyReport.aspx

Web.sitemap

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
  <siteMapNode url="~/Default.aspx" title="Overview"  description="Overview">
    <siteMapNode url="~/Reports/Default.aspx" title="Reports"  description="Reports" >
      <siteMapNode url="~/Reports/MyReport.aspx" title="MyReport"  description="MyReport" />
    </siteMapNode>
  </siteMapNode>
</siteMap>

当我在reports页面的概述页面上而不是MyReport页面上时,将显示SiteMapPath。将站点地图绑定到树视图后,我可以正确地看到所有节点。

Works -在MyReport页面上显示我

代码语言:javascript
复制
<asp:TreeView ID="TreeView1" runat="Server" DataSourceID="SitePathDataSource">
</asp:TreeView>

在MyReport页面上消失,但在所有其他页面上可见

代码语言:javascript
复制
<asp:SiteMapPath ID="SiteMapPath1" runat="server" DataSourceID="SitePathDataSource">
</asp:SiteMapPath>
EN

回答 3

Stack Overflow用户

发布于 2009-02-10 22:17:46

我不是这方面的专家。我刚刚在我的页面上测试了它,它工作得很好。我所做的与您所做的唯一不同之处在于,我没有在父节点上指定文件名。虽然我是偶然发现的,因为我不可能在我的网站地图中有两次相同的路径。

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >  
    <siteMapNode url="~/Default.aspx" title="Overview"  description="Overview">   
        <siteMapNode url="~/Reports/" title="Reports"  description="Reports" >      
            <siteMapNode url="~/Reports/Default.aspx" title="Reports Home"  description="Home" />
            <siteMapNode url="~/Reports/MyReport.aspx" title="MyReport"  description="MyReport" />    
        </siteMapNode>  
    </siteMapNode>
</siteMap>
票数 0
EN

Stack Overflow用户

发布于 2009-03-25 20:06:41

当控件未显示时,浏览器中的URL是什么?我敢打赌您有一个querystring值或一些与Reports/Myreport.aspx不匹配的值。如果页面的路径与sitemapnode中的项目不完全匹配,它将不会显示。

票数 0
EN

Stack Overflow用户

发布于 2014-10-22 05:34:33

在页面的page_load中分配站点地图提供程序

代码语言:javascript
复制
SiteMapPath1.SiteMapProvider = "DefaultSiteMap"

web.config内幕

代码语言:javascript
复制
    <siteMap defaultProvider="DefaultSiteMap" enabled="true">
<providers>
<add name="DefaultSiteMap" type="System.Web.XmlSiteMapProvider" siteMapFile="~\SiteMaps
\Default.sitemap" />
</providers>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/534363

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档