该文章为原创文章,转载请注明出处
用户-角色-权限
用户-角色-用户角色-权限-角色权限
用户-权限
用户-权限-用户权限
菜单权限控制
- 根据
用户-角色-权限
这条线获取权限集合 - 根据
用户-权限
这条线获取权限集合 - 获取
用户-权限
的禁用权限id
var disableIds = (from a in user_actions from au in a.UserActions where au.Disable == 1 select au.ActionInfoID);
- 把第一步和第二步获取的集合合并
user_actions.AddRange(actions);
- 获取合并后集合中的可用权限
user_actions = user_actions.Where(ua => !disableIds.Contains(ua.ID) && ua.IsMenu == 1).ToList();
- 对可用权限去重
var list = user_actions.Distinct<ActionInfo>(new DistinctComparer());
去重使用方法参考 https://www.cnblogs.com/xiaonangua/p/9173650.html