Exemple #1
0
        /// <summary>
        /// 设置左侧栏目
        /// </summary>
        /// <returns></returns>
        public List <MenuItemDefinition> SetNavigation()
        {
            //没有任何权限返回
            if (listPermission == null || listPermission.Count == 0)
            {
                return(null);
            }

            XDocument xdoc = XDocument.Load("App_Data/SystemMenu.xml");
            XElement  root = xdoc.Root;

            var listMenu = new List <MenuItemDefinition>();

            foreach (var eitem in root.Elements())
            {
                string name = eitem.Attribute("name").Value;
                if (string.IsNullOrEmpty(name) == true)
                {
                    return(null);
                }

                string requiredPermissionName = eitem.Attribute("requiredPermissionName").Value;

                var menuItem = new MenuItemDefinition();
                menuItem.Name  = name;
                menuItem.Title = eitem.Attribute("displayName").Value;
                menuItem.Icon  = eitem.Attribute("icon").Value;
                menuItem.Url   = eitem.Attribute("url").Value;
                menuItem.Order = int.Parse(eitem.Attribute("order").Value);

                if (eitem.Elements().Count() > 0)
                {
                    foreach (var xitem in eitem.Elements())
                    {
                        this.AddMenuItem(menuItem, xitem);
                    }
                }
                //判断是否有权限
                if (listPermission.FirstOrDefault(m => m == name.ToLower()) != null)
                {
                    listMenu.Add(menuItem);
                }
            }

            return(listMenu);
        }