基于枚举的权限

 1  public enum EnumRole
 2     {
 3         add = 1,//    00000001
 4         delete = 2,// 00000010
 5         update = 4,// 00000100
 6         query = 8//   00001000
 7     }
 8     class Program
 9     {
10         static void Main(string[] args)
11         {
12             string role = "5";
13             EnumRole a = (EnumRole)Enum.Parse(typeof(EnumRole), role) & EnumRole.add;
14             EnumRole b = (EnumRole)Enum.Parse(typeof(EnumRole), role) & EnumRole.delete;
15             EnumRole c = (EnumRole)Enum.Parse(typeof(EnumRole), role) & EnumRole.query;
16             EnumRole d = (EnumRole)Enum.Parse(typeof(EnumRole), role) & EnumRole.update;
17             if (a == EnumRole.add)
18                 Console.WriteLine("有添加权限");
19             if (b == EnumRole.delete)
20                 Console.WriteLine("有删除权限");         
21             if (c == EnumRole.query)           
22                 Console.WriteLine("有查询权限");            
23             if (d == EnumRole.update)
24                 Console.WriteLine("有修改权限");
25             Console.ReadKey();
26         }

 

posted @ 2019-09-11 16:46  Bug的Log  阅读(405)  评论(0编辑  收藏  举报