0

我刚刚开始我的 Web 开发之旅,我有一个非常基本的问题,但我仍然很困惑。

我已经设置了一个新的ASP.NET Empty Web Application. 在这个应用程序中,我创建了几个*.aspx页面和一个名为“Web.sitemap”的站点地图。

我已经在我的母版页上放置了一个 SiteMapPath 控件,并且没有进一步的配置,它检测到我的 Web.sitemap 并在派生自母版页的任何 *.aspx 页面上显示页面的位置。

但是,每当我添加导航菜单时,都不会发生这种情况。当我打开Menu Tasks对话框时,我无法从Choose Data Source下拉列表中选择它,我唯一的选择是选择<New data source...>打开数据源配置向导,我可以从中创建一个新的站点地图,但是我想使用已经存在的一个。

我该怎么做?

谢谢

4

1 回答 1

1

您需要添加一个 SiteMapDataSource 并将其 SiteMapProvider 属性设置为 Web.Config 中默认提供程序的名称,因此最终会像这样

<asp:SiteMapDataSource 
    ID="siteMapDataSource" 
    SiteMapProvider="ProviderName" 
    runat="server" />

然后在您的 Menu 控件中,您需要将 DataSourceID 设置为您刚刚添加的 SiteMapDataSource 的 ID

<asp:Menu
    ID="uxMenuEcProductCategories" 
    runat="server" 
    DataSourceID="siteMapDataSource">
</asp:Menu>
于 2012-06-22T15:24:16.287 回答