当位掩码(标志)枚举太大时该怎么办
我的应用程序中有很多权限,这些权限由Flags枚举表示。它正在迅速接近长数据类型的实际上限。而且我被迫提出一项战略,以尽快过渡到其他结构。现在,我可以将此列表分解为较小的部分,但是,根据我们的应用程序布局,这已经只是我们应用程序总体权限的一部分。在管理权限时,我们广泛地将此区别用于显示目的,如果可以避免的话,我此时不必重新访问该代码。 还有其他人遇到这个问题吗?你是怎么过去的?常规示例很好,但是如果我可以采用任何特定于语言的技巧来完成工作,则我对ac#特定示例最感兴趣。 可能不是必需的,但这是当前为我正在处理的应用程序部分定义的权限列表。 //Subgroup WebAgent [Flags] public enum WebAgentPermission : long { [DescriptionAttribute("View Rule Group")] ViewRuleGroup = 1, [DescriptionAttribute("Add Rule Group")] AddRuleGroup = 2, [DescriptionAttribute("Edit Rule Group")] EditRuleGroup = 4, [DescriptionAttribute("Delete Rule Group")] DeleteRuleGroup = 8, [DescriptionAttribute("View Rule")] ViewRule = 16, [DescriptionAttribute("Add Rule")] AddRule = 32, [DescriptionAttribute("Edit Rule")] EditRule = …