.NET 权限笔记-Attribute+Reflect+Remoting
前两天看到dudu的文章发现应用消息拦截可以集中进行权限验证,顿时非常兴奋。
可惜一搜发现大家都想到了,也是,这么爽的事谁想不到呢。
但是还有另外一个非常头疼的权限分配问题。
我看到有人用枚举,然后用位来区分权限的信息。好处是空间少,可以避免权限的重合。
还有人用Flags标识的枚举,实现了权限集合的快速判断,非常爽,但是让我犹豫的是它只能标识64种权限,怎么办呢,其它方法不可能性能比它更好(比如用集合啥的,我这里追求性能也是没办法的事,试想下如果我们的方法中一半以上都会用到权限验证,那这个的提升将非常有意义)。方法总是有的,人不能让尿给憋死。
现在问题是:一个使用Flags的整形枚举的权限是非常有限的(哪怕用long也只有一百多个),Flags能带来绝对性能上的优势。
我的想法:试用多个枚举,将不同的枚举再次枚举进来,用反射来同步枚举跟数据库。
接下来做个尝试,将会贴上Demo。