如何使用asp:menu控件配置多个站点地图



它快把我逼疯了。我找了又找又试。。。现在我请求你的帮助!

我有一个使用网站地图的asp:menu控件。一旦用户通过身份验证,我想从代码隐藏(c#)动态更改站点地图。以下是相关的代码行:

Site.Master:
<asp:Menu ID="aspMenu" runat="server" StaticDisplayLevels="1" DataSourceID="SiteMapDataSource1" Orientation="Horizontal" StaticEnableDefaultPopOutImage="False">
<asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" ShowStartingNode="False"
StartFromCurrentNode="False" StartingNodeOffset="0" />
web.config:
  <siteMap defaultProvider="WebSitemap" >
    <providers>
      <add name="WebSitemap" type="System.Web.XmlSiteMapProvider" siteMapFile="Web.sitemap"/>
      <add name="MemberSiteMap" type="System.Web.XmlSiteMapProvider" siteMapFile="Member.sitemap"/>
    </providers>
  </siteMap>
Site.Master.cs:
    protected override void OnPreRender(System.EventArgs e)
    {
        if (Request.IsAuthenticated)
        {
            SiteMapDataSource1.SiteMapProvider = "MemberSitemap";
        }
    }

在成功构建(VS 2010,4.0框架)后,我在登录后收到以下错误:

"/"应用程序中的服务器错误。找不到SiteMapProvider"MemberSitemap"。

我做错了什么?谢谢Bob

Duh,在web.config的错误部分中有siteMap提供程序。我不建议在web.config中使用睡眠剥夺。

相关内容

  • 没有找到相关文章