我正在使用 MVSiteMapProvider,v4.6.1
这是我的问题:我的菜单中有一部分只对管理员可见。我通过启用安全修剪和装饰我的控制器和/或控制器方法来定义修剪标准来实现这一点。
管理任务
- 添加
- 编辑
- 消除
我需要做的是使“AdminTasks”节点不可点击,但仍然只对管理员可见。
我观察到的行为是,如果我clickable="false"
在站点地图中标记“AdminTasks”,则无论用户是否为管理员,该节点都会显示给所有人。看起来,在标记的节点clickable='false'
中没有执行安全修整。
我的假设是,在没有过多探索代码的情况下,当节点被标记时clickable='false'
,SiteMapProvider 不会尝试解析任何路线(因为导航目的无论如何都不需要它);但这样做时,它不会检查控制器中的装饰,因此会跳过安全修整。
我的假设正确吗?有没有办法让一个不可点击的节点仍然被安全修剪?
谢谢