在MVC应用程序中,对于所有用户都有权执行的给定操作,我想根据用户的组成员身份过滤结果。例如 ...
使用授权过滤器来限制对Actions的访问没有问题,但是我很难找到如何限制对数据的访问,而不是在每次获取数据的地方显式修改语句。
假设您的记录在数据库中,角色成员资格模型不会扩展到开箱即用的数据库。您可以为数据库构建基于角色的访问控制,但使用更简单的方法可以节省时间。例如,在控制器中使用这样的代码:
if (Roles.IsUserInRole("GroupA")) {
// Get data for GroupA.
}
// Display data...
一年后,在different but related issue工作,我找到了EntityFramework.DynamicFilters包,它完全符合我的需要!