在我们的数据库中,我们有一个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;
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top