使用用户的权限从数据库过滤数据列表的最佳方法是什么?
例如: 我有一个控制器,它返回一个包含所有属性的汽车列表,但我不想告诉控制器我想要哪些汽车。控制器必须检查请求的用户可以看到哪些汽车,过滤数据列表并仅发送允许的汽车。所以用户A只看到汽车1,2,5,用户B汽车2,3,4,5,它就行了。一辆汽车不是特定于一个独特的用户,它可能有多个用户链接。
我正在使用asp.net身份和实体框架
- 编辑 -
我最近一直在寻找,也许声称可能是我的解决方案。但是我如何使用声明过滤数据并仅使用户有权限的项目?
请任何人帮忙
- 编辑2 -
我正在添加示例代码
public class CarModel
{
public int Id { get; set; }
public string Name { get; set; }
public DateTime BuildDate { get; set; }
// and others
}
控制器:
public class CarsController
{
[Authorize]
public List<CarModel> GetCars ()
{
// get current user permission and return only cars that current user can see
}
}