系统将支持两种分类方式,层级分类:即有上下级关系的,是一种树型结构方法,同时系统还涉及了三种继承关系,即不继承、包含下级、继承上级,其中:不继承是表示上下级没有任何继承关系,即上级与下级一点关系都没有;包含下级:代表上级权限中是包含下级的,是一种收敛型的权限结构,有两种执行方式;第一种就是判断下级有权限则上级既有权限,第二种,在设权限时,是要删除一个权限则代表其下属全部以为都将失去这一权限。继承上级是一种发散的权限机构,根级权限是最小的,其下属都会继承他的权限,所以权限成发散结构。spa
同时系统还未非树型结构设计了一种角色组的分类管理方式,即每个权限均可以设置到一个角色组中,管理时能够按照角色组的方式进行管理。设计
在这个模块的设计过程当中,有几个心得:server
表格采用了<asp:Repeater runat="server" ID="listRole" onitemdatabound="listRole_ItemDataBound" OnItemCommand="listRole_ItemCommand" >的组件方式,里面用<HeaderTemplate>设置样式,<ItemTemplate>承载内容,后台用listRole_ItemDataBound和listRole_ItemCommand两个事件加载列表和相应按钮事件。继承
上面导航区域采用了几种控件来实现的:
事件
RadioButtonList做为管理方式控件使用,RepeatDirection="Horizontal" AutoPostBack="True" TextAlign="Right" input
RepeatDirection表示水平放置,AutoPostBack自动向后台提交不写,只在前台选择,后台事件不响应,TextAlign表示文字在右,选择钮在左的样式。it
树型管理中的导航,系统采用了<asp:Menu runat="server" ID="menuParent" OnMenuItemClick="menuParent_MenuItemClick">组件,后台在点击和展现过程当中,自动完成添加和修改,从而实现了导航的样式展现。io
分组选项则采用asp:DropDownList组件使用。class
模块采用class="input-group"的Bootstrap样式将管理方式和选择导航区域括了起来。后台