目前,我有我的网站使用枚举标志如何?
Edit
Delete
Add
View
每个人都会查看权限时,有人订阅别人4个权限。
目前在我存储每个作为一个列在我的数据库中的位值。
我在想也许我应该使用枚举与标志,但我有一些问题。
- 用户将能够选择用户权限(eveyone获取视图,你不能拿走它)。现在很容易,因为我使用复选框,然后将bool值保存到数据库。
我的问题是什么是将复选框转换为枚举类型的最佳方式是什么?所以如果他们选择添加权限,我可以将其映射到右侧的枚举类型。
想知道有那么一个更好的办法
PermissionTypes t;
if(add == true)
{
t = PermissionTypes.Add
}
if(edit == true)
{
t += PermissionTypes.Edit // not sure if you even can do this.
}
我知道用枚举的标志,你可以使用管道和做这样的事情
PermissionTypes t = PermissionTypes.Add | PermissionTypes.Edit
我想知道是不是很好的做法,另一种类型在我的枚举像
AddEdit = Add | Edit
我在想这会导致许多组合tions(想象一下,如果我有10个权限或类似的东西)。
你有什么是相当合理的。 '+ ='的'|'等价于'| ='。 – siride
你可以使用'if(add)'而不是'if(add == true)'。 – nneonneo