SiteMap中的roles怎么配置都不生效,求指点

sunnj87 2011-04-20 06:44:04
现在有一个Web.sitemap 因为以前没用过sitemap,然后现在再改别人做过的一个比较 #¥!@&(*&& 的网站。以前的权限分两级,Admin1,Admin2。Admin1能管理显示全部的菜单。Admin2只能显示栏目3下的菜单。

<siteMap>
<siteMapNode url="~/Index.aspx" title="首页" description="" >
<siteMapNode url="~/Index.aspx" title="后台管理" description="" >

<siteMapNode url="~/Index1.aspx" title="栏目一" description="" >
<siteMapNode url="~/index1/subIndex1.aspx" title="子栏目一" description="" />
<siteMapNode url="~/index1/subIndex2.aspx" title="子栏目二" description="" />
</siteMapNode>

<siteMapNode url="~/Index.aspx" title="栏目二" description="" >
<siteMapNode url="~/index2/subIndex3.aspx" title="子栏目一" description="" />
<siteMapNode url="~/index2/subIndex4.aspx" title="子栏目二" description="" />
</siteMapNode>

<siteMapNode url="~/Index.aspx" title="栏目三" description="" >
<siteMapNode url="~/index3/subIndex5.aspx" title="子栏目一" description="" />
<siteMapNode url="~/index3/subIndex6.aspx" title="子栏目二" description="" />
</siteMapNode>

</siteMapNode>
</siteMapNode>
</siteMap>

现在需求变了,要再加一层Admin3,可以加载除栏目一和栏目三的菜单。让我比较纠结。
以前显示栏目三的时候,可以这么写:
SiteMapNode node = SiteMap.Provider.FindSiteMapNode("~/Index1.aspx");

但是现在Admin2管理员得权限是显示栏目一和栏目三,SiteMapNode好像还是只读的。在网上找说是在web.config中加

<system.web>
<siteMap defaultProvider="default" >
<providers>
<add name="default" type="System.Web.XmlSiteMapProvider" siteMapFile="Web.sitemap" securityTrimmingEnabled="true"/>
</providers>
</siteMap>
....
</system.web>


再在SiteMap里的 siteMapNode 节点中设置roles属性 如 roles="Admin1,Admin2" ...

但是我也这么搞了,还是不行。 想问下,如果不是直接加载一个节点下的菜单,它的权限要怎么设置。。。我好纠结啊。!
...全文
53 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunnj87 2011-05-15
  • 打赏
  • 举报
回复
没换菜单的形式。只不过在绑定的时候给单独加了个方法做权限检查,没有的就不显示了。
子夜__ 2011-04-22
  • 打赏
  • 举报
回复
很少用。。

可否考虑动态加载菜单 换个形式

菜单
sunnj87 2011-04-21
  • 打赏
  • 举报
回复
都没有用过sitemap吗?

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧