相关疑难解决方法(0)

处理MVC中的多个角色 - 基于操作的辅助功能

我目前有一个项目,我似乎遇到了关于角色的问题,并认为我会就如何最好地处理问题得到一些意见.

系统将需要可编辑,灵活的角色,不仅可以控制特定区域的访问,还可以控制系统功能的使用(添加用户,编辑用户,查看报告等)

系统当前允许用户拥有多个角色,每个角色都明确定义了访问/操作区域,例如:

  • 角色A可以访问区域1,2,3并且可以添加用户.
  • 角色B可以访问区域1,5,7并且可以修改用户.
  • 角色C可以访问区域4,6并且只能访问查看用户.

所以用户可以在角色A和C中,因此访问:1,2,3,4和6,并且可以添加和查看用户.

我的第一个解决方案是创建一个字典,将所有可能的访问/访问选项区域存储到字典中,如下所示:

Dictionary<string,bool>
Run Code Online (Sandbox Code Playgroud)

然后,当它被实例化时,它从数据库中提取所有属性,然后遍历角色以确定它们是否可访问.

所有这一切目前都运行得很好 - 但是项目非常Javascript/jQuery密集,因此很多这些选项都是由客户端函数调用的.我试图避免必须包含所有这些客户端功能:

<%if(AccessDictionary[key])
     //Enable or Disable Action
<%}%>
Run Code Online (Sandbox Code Playgroud)

所以基本上,我想知道以下事情:

  1. 用户登录后,存储此词典的最佳方法是什么?静态?在会议中?
  2. 什么是最好的存储方法,以便在视图中轻松访问字典?(因为我目前看不到包装我的客户端功能)

任何建议或想法将不胜感激!

c# asp.net dictionary roles asp.net-mvc-2

11
推荐指数
1
解决办法
7014
查看次数

标签 统计

asp.net ×1

asp.net-mvc-2 ×1

c# ×1

dictionary ×1

roles ×1