我决定为访问控制列表权限检查编写以下代码。
我的数据库将返回一条记录,如EmployeeDetFeature
, Create
,Edit
我想解析Create
并将其添加到功能 ACL 枚举列表中。
我也需要稍后找到它。
public enum ACL
{
Create,
Delete,
Edit,
Update,
Execute
}
public class Feature
{
public int Id { get; set; }
public string Name { get; set; }
public List<ACL> ACLItems { get; set; }
}
public static class PermissionHelper
{
public static bool CheckPermission(Role role, string featureName, ACL acl)
{
Feature feature = role.Features.Find(f =>f.Name == featureName);
if (feature != null)
{
//Find the acl from enum and if exists return true
return true;
}
return false;
}
}
我如何通过 Enum 集合准备来完成它,并在稍后找到相同的内容以检查权限。