zoukankan      html  css  js  c++  java
  • 递归取子菜单

    1 主方法:

     if (perlist != null && perlist.Count > 0)
                {
                   
                    foreach(AuthPermission per in perlist)
                    {
                        if (per.parentId == 0)
                        {
                            sbStr.Append( per.mName + ",sun(");
                            getSunPermission(perlist, per.menuId, sbStr);
                            sbStr.Append(")");
                        }
                    }
                }

    2 递归

     /// <summary>
            /// 递归获取子菜单
            /// </summary>
            /// <param name="perList"></param>
            /// <param name="thisMenuId"></param>
            /// <returns></returns>
            public void getSunPermission(IList<AuthPermission> perList, int thisMenuId, StringBuilder menuStr)
            {
               
                IList<AuthPermission> sunlist = (from per in perList where per.parentId == thisMenuId select per).Reverse<AuthPermission>().ToArray();
    
                if (sunlist == null || sunlist.Count <= 0)
                {
                    return ;
                }
                else {
                    
                    foreach (AuthPermission per in sunlist)
                    {
                        menuStr.Append(""+per.mName+",");
                        getSunPermission(perList, per.menuId, menuStr);
                    }
                }
    
            }
  • 相关阅读:
    第17章 委托
    第16章 数组
    第15章 枚举类型和位标志
    第14章 字符、字符串和文本处理
    第13章 接口
    第12章 泛型
    第10章 属性
    第11章 事件
    内部类(转载)
    Collections.sort的三种用法
  • 原文地址:https://www.cnblogs.com/puzi0315/p/3157905.html
Copyright © 2011-2022 走看看