【无私分享:从入门到精通ASP.NET MVC】从0开始,一起搭框架、做项目(7.1) 模块管理,验证权限,展示模块列表
索引
【无私分享:从入门到精通ASP.NET MVC】从0开始,一起搭框架、做项目 目录索引
简述
今天我们来做模块管理的 展示 模块列表
项目准备
我们用的工具是:VS 2013 + SqlServer 2012 + IIS7.5
希望大家对ASP.NET MVC有一个初步的理解,理论性的东西我们不做过多解释,有些地方不理解也没关系,会用就行了,用的多了,用的久了,自然就理解了。
项目开始
一、添加预置数据
超级管理员是获取全部系统和权限的,但是首先,必须是存在权限的,模块和权限是整套系统的基架。
我们首先添加几个模块: 模块管理和权限管理 他们都属于系统管理 在 系统管理中心下
SYS_MODULE
SYS_PERMISSION 分别给模块表和权限表 添加 查看(View)详情(Detail)添加(Add)删除(Remove)修改(Edit)权限
二、新建HomeController控制器 继承BaseController
public class HomeController : BaseController
(BaseController 需要添加引用 using WebPage.Controllers)
1、注入Module模块管理
在Config/Controllers.xml 添加
(容器需要添加引用 using Service.IService)
2、添加Index 视图,将模块(菜单)输出到页面上,大家可以用BootStrap后台模板+BUI,看个人喜好。
三、模块管理
1、新建模块管理控制器 ModuleController 继承 BaseController
2、同上,声明容器
3、模块管理首页 视图 Index 添加 权限验证
4、加载模块列表方法 BindList(分级显示,所以这里我们没有用分页)
为了更直观的显示他们的层级关系,我们在展示模块名称的时候 写了个简单的方法 错层显示
5、我们接收一些查询的参数,然后将查询结果输出到页面(查询关键字的接收以及后面分页用到的分页参数的接收都在BaseController 我们这里只接收 系统ID 就可以了)
6、我们在Index视图页添加操作按钮
7、查询检索项
8、接收列表动态类,输出列表
四、在程序中 我们已经对 模块的操作权限做了验证,但是,让用户点击一个操作按钮就提示 您没有权限,这是很不友好的,所以,我们想,用户对某个模块没有操作权限,我们就把这个按钮Remove掉
我们在BaseController已经对页面输出了权限集合 我们在布局页中接收这个集合并做出处理:对本模块没有的操作权限 我们Remove掉
这样,我们就做到了前台和后台的双验证。
给大家展示一下前台效果(注意:我们在添加测试数据的时候 并没有 添加 addchild 权限) 所以 在页面中 列 操作 的 [添加子模块] 被移除了
原创文章 转载请尊重劳动成果 http://yuangang.cnblogs.com
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?