C# 枚举 Flag属性(权限设计)
2021-06-18 07:06
标签:权限 防止 多个 create color pre flags div 权限设计 枚举是一个可以列举元素的对象,常用于权限,日期,类型等。 如果对一个值可以包含多个,那么可以使用枚举,加上Flags 权限相加 判断是否含有此权限 删除权限 数据库存int,将int转成枚举 C# 枚举 Flag属性(权限设计) 标签:权限 防止 多个 create color pre flags div 权限设计 原文地址:https://www.cnblogs.com/itsone/p/10310644.html[Flag]
public enum Permission
{
create=1,
add=2,
delete=4,
update=8
}
//权限设计通常用2的幂次方,防止值重复
Permission addP=Permission.create|Permission.add
addP.HasFlag(Permission.add);
//或者
(show & Show.A)!=0;//T 有 F 无
addP=addP& (~Permission.add);
Permission allP = (Permission) Enum.Parse(typeof(Permission), 3 );