查询sitemap的字符串参数



我使用的是VWD 2010, ASP。NET和c#。我在另一篇文章中找到了如何做到这一点的指针。遗憾的是,我不能使它工作。

它指向的示例代码如下:http://weblogs.asp.net/jgaylord/adding-querystring-parameters-to-the-sitemapnode

我已经包含了c#代码,但我似乎无法让程序识别代码实际上在那里。我设置的断点永远不会被调用。
我把它放入web.config:

    <siteMap enabled="true">
      <providers>
        <clear/>
        <add name="ExtendedSiteMapProvider" type="Configuration.ExtendedSiteMapProvider" siteMapFile="web.sitemap" securityTrimmingEnabled="true" />
<!--
        <add siteMapFile="Web.sitemap" name="AspNetXmlSiteMapProvider" type="System.Web.XmlSiteMapProvider" securityTrimmingEnabled="true"/>
    -->    
      </providers>
    </siteMap>

注意AspNetXmlSiteMapProvider如何被注释掉。这个名字在文件的其他地方没有出现。然而,当我试图运行我的程序时,我得到这个错误信息:为defaultProvider指定的提供者'AspNetXmlSiteMapProvider'在提供者集合中不存在。

如果取消对该行的注释,程序将运行,但不会调用新代码。什么好主意吗?

这是因为您没有指定默认为AspNetXmlSiteMapProvidedefaultProvider,正如您在这里看到的那样。

你只需要像这样指定默认的提供者:

<siteMap enabled="true" defaultProvider="ExtendedSiteMapProvider">
  <providers>
    ....
  </providers>
</siteMap>

或者在相应的SiteMpaDataSource属性中指定提供者,这样就不使用默认值

相关内容

  • 没有找到相关文章

最新更新