回到目录css
关于Lind.DDD.Manager的培训与学习html
讲解:张占岭数据库
花名:仓储大叔安全
主要框架:Lind.DDD,Lind.DDD.Manager框架
因为数据模型,数据库初始化(Code.First自动升级数据库或者进行数据库版本的迁移)控制器,View视图,css,js等元素组件的一套标准的后台管理系统框架,能够直接应用到任何一个系统上,能够它将发布到Nuget上,之后安装和更新更加方便。学习
Lind在nuget上早已有了本身的版本,用户在本身的项目上直接从nuget上在线安装便可,它将会把对应的view,content,script,dll等安装到你的对应项目中,你没必要担忧它的升级,由于一切由nuget来控制!spa
Lind.DDD.Authorization.Mvc.AuthorizationLoginFilter:对用户登录后的受权设计
Lind.DDD.Filters.ActionAuthorityAttribute:对指定Action添加操做权限的标识日志
Lind.DDD.Filters.ActionLoggerAttribute:对指定Action进行操做日志的记录htm
Lind.DDD.Filters.ActionTrackAttribute:对action执行时间的跟踪
Lind.DDD.Filters.ExceptionErrorLoggerAttribute:对action执行过程当中,异常的捕获
Lind.DDD.Manager.Filters.ManagerUrlAttribute:对指定Url与系统Url进行对比,用于菜单权限的控制
Lind.DDD.Manager.Filters.ManagerActionLoggerAttribute:后台操做日志记录,它继承自ActionLoggerAttribute类,主要实现了后台日志持久化机制
后台模块设计,要求每一个模块属于一个controller(控制器),这样能够更好控制每一个action的行为权限。
行为类型的枚举
为每一个Action应用本身的行为特性
因为本身的业务系统在记录日志时的持久化方式比较多,因此咱们将获取日志的逻辑与持久化的逻辑进行分离,获取放在Lind.DDD里,而持久化的逻辑放在具体的项目中,如Lind.DDD.Manager项目,它有本身的操做日志过滤器,它项目里的Action应用它的ManagerActionLoggerAttribute便可,代码以下
在Action上应用代码以下
对业务平台的相关数据表的某些字段进行控制,根据不一样的角色,为业务平台返回不一样的数据集合,而对于业务平台来讲,它们将成为对表进行过滤的一种条件!
模型的设计
先添加数据集的类型,用于从业务平台选择须要筛选的全部数据
而后添加对应的值,选对应的类型,能够被筛选出来的目标数据
业务平台能够根据本身的用户编号userid,表名type和字段名field来获取指的数据,框架中提供了/WebDataSetting/GetDataSet方法,返回为目标值组成的字符串,每一个值用逗号作分割。
在Lind.DDD.Manager里,菜单权限会被分配到每一个角色中,而用户登录后,会根据它的角色来显示对应的菜单列表,这一般表如今左侧的导航菜单上,而若是用户在地址栏直接输入菜单的URL进行访问时,咱们也有对应的ManagerUrlAttribute对它进行控制,主要逻辑是使用数据库里的菜单与当前角色所拥有的菜单进行比对,若是存在这个权限,菜单对应的页面才能够被访问。
感谢各位对Lind.DDD框架的关注,让咱们一块儿把框架作的更好!
感谢各位!