假如说 每个角色 可以访问 不同的 页面 , 看到不同的 菜单选项 ,那么 每次切换页面 是不是 都需要 查询数据库 呢 ,这样 会不会 很烂
角色对应的页面与页面对应的按钮放内存或redis中,因为不经常变换,就是变换也可以直接修改。至于用户对应角色,登录时候查一下放session中,变换时候需要重新登录。个人愚见
不会.不要想太多.
权限管理都有几种现成的业务模型.
你可以查下asp.net identity 看下他的结构.也可以百度下几种基本的权限管理思路.
参考下面这篇帖子
http://www.tuicool.com/articles/QJrAfa
试想一下,如果,不查询数据库,你准备怎么搞,hard code更烂,或许,你可以尝试缓存
程序运行把所有权限缓存起来, 用户登录的时候, 获取用户角色权限信息, 缓存起来, 每次请求的时候, 取用户的权限信息和所有权限判断是否有权限