zoukankan      html  css  js  c++  java
  • .NET生成easyui的Tree的json格式

     1     public class Tree
     2     {
     3         public Tree()
     4         {
     5             children = new List<Tree>();
     6         }
     7         public string id { get; set; }
     8         public string text { get; set; }
     9         public string state { get; set; }
    10         public List<Tree> children { get; set; }
    11     }
            public static List<Tree> CreateTree(List<PermissionModel> permissionList)
            {
                List<Tree> rootNode = new List<Tree>
                {
                    new Tree
                    {
                        id = "UR030000000",
                        text = "权限列表"
                    }
                };
    
                List<PermissionModel> parent = permissionList.FindAll(c => c.ParentId == "UR030000000");
    
                foreach (PermissionModel item in parent)
                {
                    Tree node = new Tree
                    {
                        id = item.Id,
                        text = item.PermissionName
                    };
                    node.children = CreateChilden(permissionList, node);
                    if (node.children.Count > 0)
                    {
                        node.state = "closed";
                    }
                    rootNode[0].children.Add(node);
                }
    
                return rootNode;
            }
    
            public static List<Tree> CreateChilden(List<PermissionModel> list, Tree tree)
            {
                List<Tree> nodeList = new List<Tree>();
    
                List<PermissionModel> childer = list.FindAll(c => c.ParentId == tree.id);
                foreach (PermissionModel item in childer)
                {
                    Tree node = new Tree
                    {
                        id = item.Id,
                        text = item.PermissionName
                    };
                    node.children = CreateChilden(list, node);
                    if (node.children.Count > 0)
                    {
                        node.state = "closed";
                    }
                    nodeList.Add(node);
                }
    
                return nodeList;
            }
  • 相关阅读:
    STL_string容器
    STL简介
    C++文件输入输出
    Qfile22
    QFile111
    v-model原理
    Scrum敏捷软件开发方法
    大神讲故事:微服务及相关技术,很生动,另附ws和restful区别
    js异步请求方法
    SQL Server中char、varchar、text和nchar、nvarchar、ntext的区别 (转)
  • 原文地址:https://www.cnblogs.com/Leonid/p/5687866.html
Copyright © 2011-2022 走看看