我认为我遗漏了一些关于站点地图的明显内容。
我正在尝试使用中继器为我们网站上的新站点地图生成一些导航。但我不想使用普通的 Web.sitemap 文件,我想使用新的文件...我们将其命名为“Web.NEW.sitemap”。
代码在某种程度上似乎有些明显......
<asp:Repeater ID="rptMyRepeater" DataSourceID="mySitemap" runat="server">
<ItemTemplate>
blah blah blah
</ItemTemplate>
</asp:Repeater>
<asp:SiteMapDataSource ID="mySitemap" runat="server" />
但是如何让 SiteMapDataSource 使用 Web.NEW.sitemap 而不是默认站点地图?我想添加一个属性,例如:
SiteMapProvider="Web.NEW.sitemap"
应该这样做,但没有骰子。
我错过了什么?
最佳答案
您必须正确配置您的 web.config 才能使用 SiteMapDataSource属性(property)。使用SiteMap element :
<siteMap defaultProvider="oldProvider">
<providers>
<clear />
<add name="oldProvider" type="System.Web.XmlSiteMapProvider" siteMapFile="web.sitemap" />
<add name="newProvider" type="System.Web.XmlSiteMapProvider" siteMapFile="Web.NEW.sitemap" />
</providers>
</siteMap>
然后将 SiteMapProvider 属性设置为 web.config 文件中提供程序的名称。
SiteMapProvider="newProvider"
关于asp.net - 如何在 ASP.NET 中使用多个 .sitemap 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/916681/