Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将导航菜单链接到现有的网站地图_C#_Asp.net_Visual Studio 2010 - Fatal编程技术网

C# 如何将导航菜单链接到现有的网站地图

C# 如何将导航菜单链接到现有的网站地图,c#,asp.net,visual-studio-2010,C#,Asp.net,Visual Studio 2010,我刚刚开始我的网络开发之旅,我有一个非常基本的问题,但我仍然感到困惑 我已设置了一个新的ASP.NET空Web应用程序。在这个应用程序中,我创建了一些*.aspx页面和一个名为“Web.sitemap”的站点地图 我已在母版页上放置了SiteMapPath控件,并且在没有进一步配置的情况下,该控件检测到my Web.sitemap,并在从母版页派生的任何*.aspx页面上显示该页面的位置 然而,每当我添加导航菜单时,这种情况就不会发生。当我打开菜单任务对话框时,我无法从选择数据源下拉列表中选择此

我刚刚开始我的网络开发之旅,我有一个非常基本的问题,但我仍然感到困惑

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

我已在母版页上放置了SiteMapPath控件,并且在没有进一步配置的情况下,该控件检测到my Web.sitemap,并在从母版页派生的任何*.aspx页面上显示该页面的位置

然而,每当我添加导航菜单时,这种情况就不会发生。当我打开
菜单任务
对话框时,我无法从
选择数据源
下拉列表中选择此项,我唯一的选择是选择
,这将打开数据源配置向导,我可以从中创建一个新的站点地图,但我希望使用现有的站点地图

我该怎么办


谢谢

您需要添加一个SiteMapDataSource,并将其SiteMapProvider属性设置为Web.Config中默认提供程序的名称,这样它就会变成这样

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

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

<asp:Menu
    ID="uxMenuEcProductCategories" 
    runat="server" 
    DataSourceID="siteMapDataSource">
</asp:Menu>