当前位置:Gxlcms > 数据库问题 > C#关于数据库中存储的用户权限类似 "普通员工,管理员" 如何在代码中读取分析权限

C#关于数据库中存储的用户权限类似 "普通员工,管理员" 如何在代码中读取分析权限

时间:2021-07-01 10:21:17 帮助过:35人阅读

enum Role { 普通员工 = 1 << 0, 操作员 = 1 << 1, 管理员 = 1 << 2, 经理 = 1 << 3 }

然后读取和分析权限

   public class Man
    {
        public Role Role { get; set; }
    }
   private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            Man man = new Man();
            string dbStr = "普通员工,管理员"; //假设已经从数据库中读到的权限数据
            man.Role = (Role)Enum.Parse(typeof(Role), dbStr);
            if (man.Role.HasFlag(Role.普通员工 | Role.管理员))
            {

            }
        }

如果想保存权限到数据库,则需要添加[Flags]特性

   [Flags]
    public enum Role
    {
        普通员工 = 1 << 0,
        操作员 = 1 << 1,
        管理员 = 1 << 2,
        经理 = 1 << 3
    }

  private void btn_Save(object sender, RoutedEventArgs e)
        {
            Man man = new Man();
            man.Role = Role.操作员 | Role.经理;
            string msg = man.Role.ToString();  //msg="操作员, 经理"
        }

 

C#关于数据库中存储的用户权限类似 "普通员工,管理员" 如何在代码中读取分析权限

标签:bsp   click   parse   end   out   tac   如何   event   字符串   

人气教程排行