如何从特定用户隐藏此菜单的节点?

时间:2013-08-01 06:37:56

标签: asp.net-mvc-4 telerik-mvc mvcsitemapprovider

我有一个MVC Web应用程序并使用Telerik面板栏和树视图组件并创建我自己的菜单。树视图和树视图树视图绑定到站点地图。我希望这个菜单为每个用户显示一个特定的节点,例如管理员访问所有节点,而具有低访问权限的用户只能访问特定节点,他可以看到该用户角色。我看到MvcSiteMapProviderr,但我无法得到它的好文件,我不知道它对我的建议有好处!我想我可以通过控制器动态创建站点地图但我不知道我怎么能这样做,这是真的吗?我的申请中有5或6个角色。 你对我的建议是什么好的?或者如果以上所有都不好的话,请向我介绍一种新的方法。 我必须限制对面板栏和树视图的每个节点的访问。

this is my menu

1 个答案:

答案 0 :(得分:0)

您可以使用MvcSiteMapProvider执行此操作。

如果您只想控制可见性,则可以构建自己的ISiteMapNodeVisibilityProvider

另一方面,这听起来更像是您试图阻止访问某些节点,具体取决于用户是否具有权限。如果您使用AuthorizeAttribute来控制对控制器操作的访问,则只需启用security trimming即可免费获得。