最近在作权限设计, 因为同一种角色的不同用户权限也有不同, 所以不能基于角色划分权限,  现在的作法是: 在用户表中直接加一个字段表示权限, 如1,2,3,4,5,   表示对应权限表中的五种权限. 在程序后台写了一个方法:通过SESSION取出这个字段,转换成字符串数组,在每个页面加载时, 传入这个页面所要求权限的ID, 遍历这个数组, 有就TURE, 没有就FALSE.  每个页面都要这些判断一下是不是?  或还有什么好的方法, 请大家指教.

解决方案 »

  1.   

    为什么要遍历数组呢?你用Dictionary,然后用权限的名称作为Key不就好了吗?那样直接比较一个Key的真值就行了。
      

  2.   


    最近,我的MIS项目也有这样一个权限角色分配的问题....角色另设计一张表放权限类型
      

  3.   

    public static bool Right(string right)
    {
     bool flag;                    string[] rightArray = (string[])System.Web.HttpContext.Current.Session["right"];
    foreach (string singleRight in rightArray)
    {
    if (singleRight == right)
    {
    flag = true;
    return flag;

    }                                    return flag;

    } return flag;


    }上面这个方法,该怎么写RETURN啊, 总是返回不了FLAG.... 咋整?