当前位置:  开发笔记 > 后端 > 正文

基于角色为网站实现不同视图的最佳方法是什么?

如何解决《基于角色为网站实现不同视图的最佳方法是什么?》经验,为你挑选了1个好方法。

在ASP.NET中,执行以下操作的最佳方法是:

    根据您的权利显示某些控件?

    对于gridview控件,如何根据您的角色显示某些列?

我想2号,数据来自数据库的角色特定视图.



1> Elijah Manor..:

我建议不要使用角色来隐藏/显示某些控件,而是建议为每个角色设置另一层权限,并根据这些角色显示/隐藏.

这样,您可以重新定义角色拥有的权限,而不必更改代码.

此外,这允许您在将来创建新角色,并为角色分配一组权限.

至于控件,是的......我只是根据user.IsInRole("permissionname")值在控件上设置Visible属性.

对于网格,我会这样做...将列的可见性设置为IsInRole布尔值.

//Delete Icon Column
gridViewContacts.Columns[0].Visible = user.IsInRole("DeleteAnyContact"); 

我会以非常精细的方式创建您的权限..例如

ViewAnyContact

ViewOwnContact

EditOwnContact

EditAnyContact

AddAnyContact

DeleteOwnContact

DeleteAnyContact

等等...

推荐阅读
手机用户2402852307
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有