我如何从C#中的标志属性中从枚举中获得BitMask值?
-
24-10-2019 - |
题
在我们的数据库中,我们有一个BitMask,代表用户可以做出的操作类型。
在我们的C#客户端中,当我们从数据库中检索此整数值时,我们会构造枚举/标志。看起来有些类似:
[Flags]
public enum SellPermissions
{
Undefined = 0,
Buy = 1,
Sell = 2,
SellOpen = 4,
SellClose = 8
// ...
}
在我们的应用程序中,我有一个编辑权限页面,然后使用该页面来修改该枚举的价值,使用位置或不同的枚举值。
permissions = SellPermisions.Buy | SellPermissions.Sell;
现在,在进行这些更改之后,在我的数据库调用中,我需要调用一个更新/插入的sproc,该sproc期望整数值。
如何从枚举/标志中获得整数位值,以便我可以在数据库中设置修改后的权限?
解决方案
我能够通过将变量施放到int来做到这一点。
int newPermissions = (int)permissions.
其他提示
int permissionsValue = (int) permissions;
不隶属于 StackOverflow