使用两张网.项目中的站点地图
本文关键字:项目 站点 地图 两张 | 更新日期: 2023-09-27 18:11:55
我想用两个不同的网页。站点地图在一个应用程序。(一个引导导航条是创建在我的主页,我想要不同的布局默认页面等)所以msdn说,你必须添加一个新的网页。站点地图和网页中的一个键。配置MSDN文档,这样做之后,我不知道如何查询到新的web。Sitemap,因为我读了原来的一个如下:
SiteMapNode rootNode = SiteMap.RootNode;
makeNavbar(rootNode.ChildNodes, true, false);
....
还好…导航栏在这里创建得很好…
但是我想要的是这样的:
SiteMapBode rootNode = SiteMap.UseProvider("newSiteMap").RootNode;
显然这个函数不存在…
所有我想要的是阅读新的网页。无需更改太多代码的站点地图。
谁能给我指个正确的方向?这是你的配置。
<siteMap defaultProvider="XmlSiteMapProvider" enabled="true">
<providers>
<clear />
<add name="XmlSiteMapProvider" type="System.Web.XmlSiteMapProvider" siteMapFile="Web.sitemap" />
<add name="XmlSiteMapProvider2" type="System.Web.XmlSiteMapProvider" siteMapFile="secondsitemapname.sitemap" />
</providers>
</siteMap>
接下来我要做的就是将asp:sitemapdatasource添加到您在配置文件中给出的正确名称的页面。
那么如果你有一个asp:menu, asp:repeater或任何其他控件,你可以使用datasourceid来连接它与asp:sitemapdatasource
SiteMapDataSource test = new SiteMapDataSource();
test.Provider.RootNode
我找到解决办法了。使用SiteMap类,就像问题中使用的例子一样,您可以通过编程方式访问不同的web。Sitemap和read
SiteMapNode rootNode = SiteMap.Providers["SiteMap2"].RootNode;
感谢@Davy Quyo确认了我的第一步:将提供商添加到web.config