Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.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
Asp.net 这可以通过站点地图修剪来解决吗?_Asp.net_Sitemap - Fatal编程技术网

Asp.net 这可以通过站点地图修剪来解决吗?

Asp.net 这可以通过站点地图修剪来解决吗?,asp.net,sitemap,Asp.net,Sitemap,这似乎应该行得通,但行不通 我是以超级用户身份登录的,应该会看到1个报告,但实际上我看到了2个 <siteMapNode url="Reports" title="Reports" description="" roles="Administrator, Power"> <siteMapNode url="default.aspx" title="Default" description="" roles="Administrator" /> <site

这似乎应该行得通,但行不通

我是以超级用户身份登录的,应该会看到1个报告,但实际上我看到了2个

<siteMapNode url="Reports" title="Reports"  description="" roles="Administrator, Power">
  <siteMapNode url="default.aspx" title="Default"  description="" roles="Administrator" />
  <siteMapNode url="custom.aspx" title="Custom"  description="" roles="Administrator, Power" />
</siteMapNode>


这应该可以正常工作吗?

很抱歉,如果您已经选中了此选项(您没有提及),但是您是否已在web.config中启用了修剪功能

securityTrimmingEnabled=“true”

显示此“示例”web.config

<system.web>
<!-- …other configuration settings -->
  <siteMap defaultProvider="XmlSiteMapProvider" enabled="true">
    <providers>
      <add name="XmlSiteMapProvider"
        description="Default SiteMap provider."
        type="System.Web.XmlSiteMapProvider "
        siteMapFile="Web.sitemap"
        securityTrimmingEnabled="true" />
    </providers>
  </siteMap>
</system.web>


有什么想法吗?我认为这将是一个相当常见的设置,不同的角色可以访问同一个页面,而某些页面某些角色无法访问。