我正在从交换邮箱中读取已分配权限的列表,这些值是通过 AccessFlag 属性返回的,该属性以十六进制返回 20001,看起来 2000 代表 READ 权限,而 1 代表 FULL 权限。
我想要做的是将该值显示为 READ 和 FULL 权限集。
最佳答案
如果你想要 is 作为一个字符串,你需要一个枚举。
所以如果你有这样的事情:
[Flags]
enum Permissions
{
Read = 0x20000,
Full = 0x00001
}
然后你可以转换你的返回值并使用 ToString()
string val = ((Permissions )myValue).ToString();
结果会是这样的:
Read, Full
请注意,Flags 属性对于此类枚举很重要。
关于C# 转换十六进制值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/492005/