疯狂.NET 通用权限设计 C/S后台管理,B/S前台调用源码样例程序源码下载之 --- 操作权限 -深圳网站优化推广公司

疯狂.NET 通用权限设计 C/S后台管理,B/S前台调用源码样例程序源码下载之 --- 操作权限

我的目标就是,权限想定义什么权限就定义什么权限,想搞几个权限就搞几个
权限,只要一行代码就可以在程序里准确判断,用最少的参数,用最最简单的
方法,通用程序判断程序运行得铜墙铁壁一样稳定,这就是我的追求。

废话少说我主要讲解的7个方向为:

1。操作权限,按钮级权限
2。角色的判断,用户是否属于某个角色的判断
3。拒绝权限,反正常思维的权限
4。单元格权限,脑筋急转弯的权限处理方式
5。数据列权限,字段列级权限
6。数据集过滤权限,数据行级过滤权限
7。页面级权限,模块菜单权限处理

试验步骤如下:
(一)我通过疯狂.NET通用权限后台管理,给用户 吉日嘎拉,配置操作权限。


(2)给用户 吉日嘎拉,配置如下页面中所选中的操作权限。




(3)把用户 吉日嘎拉,归属于 “咨询顾问”这个角色,当然也可以用英文命名的,为了简单我就用中文命名吧。


(4)我创建B/S项目,在 B/S 项目里引用我的通用权限的类库,劳动成果重复利用,不用每次都写了,
我的代码又可以在B、S项目里用,用可以在C/S项目里用,还可以支持多种数据库,这就是我骄傲的牛B之处。


(5)我在B/S项目,编写的代码效果。


(6)我在B/S项目,运行程序后的效果,这里有2排按钮,运行的结果与我们设置的效果是完全符合的。


(7)我在B/S项目,中写的源码如下,供您参考:


  1  // ------------------------------------------------------------
  2  //  All Rights Reserved , Copyright (C) 2009 , Jirisoft , Ltd. 
  3  // ------------------------------------------------------------
  4 
  5  using  System;
  6  using  System.Collections.Generic;
  7  using  System.Web;
  8  using  System.Web.UI;
  9  using  System.Web.UI.WebControls;
 10 
 11  namespace  JiriSoft.Permission
 12  {
 13       using  DotNet.Common;
 14       using  DotNet.Common.Utilities;
 15       using  DotNet.Common.DbUtilities;
 16       using  DotNet.Common.Model;
 17       using  DotNet.Common.Business;
 18       using  DotNet.Common.Service;
 19 
 20       ///   <remarks>
 21       ///  _Default
 22       ///  
 23       ///  修改纪录
 24       ///  
 25       ///     版本:1.0 2009.09.06    JiRiGaLa    创建。
 26       ///     
 27       ///  版本:1.0
 28       ///   <author>
 29       ///          <name> JiRiGaLa </name>
 30       ///          <date> 2009.09.06 </date>
 31       ///   </author>  
 32       ///   </remarks>
 33       public   partial   class  _Default : BasePage
 34      {
 35           ///   <summary>
 36           ///  用户的登录操作模拟
 37           ///   </summary>
 38           private   void  UserLogin()
 39          {
 40               this .Login( " jirigala " , String.Empty);
 41          }
 42 
 43           ///   <summary>
 44           ///  测试数据连接
 45           ///   </summary>
 46           private   void  CheckDbConnection()
 47          {
 48               try
 49              {
 50                   //  打开数据库
 51                   this .DbHelper.Open();
 52                   //  把数据库里的密码都设置为空
 53                  String sqlQuery  =   "  UPDATE  "   +  BaseUserTable.TableName  +   "  SET  "   +  BaseUserTable.FieldUserPassword  +   "  = NULL  " ;
 54                   //  执行数据库更新语句
 55                   this .DbHelper.ExecuteNonQuery(sqlQuery);
 56                   //  事务开始
 57                   this .DbHelper.BeginTransaction();
 58                   //  事务递交
 59                   this .DbHelper.CommitTransaction();
 60              }
 61               catch
 62              {
 63                   //  事务回滚
 64                   this .DbHelper.RollbackTransaction();
 65              }
 66               finally
 67              {
 68                   //  关闭数据库连接
 69                   this .DbHelper.Close();
 70              }
 71          }
 72 
 73           ///   <summary>
 74           ///  显示当前用户的信息
 75           ///   </summary>
 76           private   void  ShowCurrentUserInfo()
 77          {
 78               this .lblUserInfo.Text  =   " 用户的主键: "   +   this .UserInfo.ID  +   " <br> "
 79                   +   " 用户名: "   +   this .UserInfo.Username  +   " <br> "
 80                   +   " 姓名: "   +   this .UserInfo.Realname  +   " <br> "
 81                   +   " 用户的公司主键: "   +   this .UserInfo.CompanyID  +   " <br> "
 82                   +   " 用户的公司名称: "   +   this .UserInfo.CompanyFullName  +   " <br> "
 83                   +   " 用户的部门主键: "   +   this .UserInfo.DepartmentID  +   " <br> "
 84                   +   " 用户的部门名称: "   +   this .UserInfo.DepartmentFullName  +   " <br> "
 85                   +   " 用户的工作组主键: "   +   this .UserInfo.WorkgroupID  +   " <br> "
 86                   +   " 用户的工作组名称: "   +   this .UserInfo.WorkgroupFullName  +   " <br> " ;
 87 
 88          }
 89 
 90           ///   <summary>
 91           ///  获得用户的权限
 92           ///   </summary>
 93           private   void  GetPermission()
 94          {
 95               this .DbHelper.Open();
 96 
 97               //  用户的操作权限
 98               this .btnUserAdd.Enabled      =   this .IsAuthorized( " User.Add " );
 99               this .btnUserDelete.Enabled   =   this .IsAuthorized( " User.Delete " );
100               this .btnUserExport.Enabled   =   this .IsAuthorized( " User.Export " );
101               this .btnUserImport.Enabled   =   this .IsAuthorized( " User.Import " );
102               this .btnUserPrint.Enabled    =   this .IsAuthorized( " User.Print " );
103               this .btnUserUpdate.Enabled   =   this .IsAuthorized( " User.Update " );
104               //  角色的操作权限
105               this .btnRoleAdd.Enabled      =   this .IsAuthorized( " Role.Add " );
106               this .btnRoleDelete.Enabled   =   this .IsAuthorized( " Role.Delete " );
107               this .btnRoleExport.Enabled   =   this .IsAuthorized( " Role.Export " );
108               this .btnRoleImport.Enabled   =   this .IsAuthorized( " Role.Import " );
109               this .btnRolePrint.Enabled    =   this .IsAuthorized( " Role.Print " );
110               this .btnRoleUpdate.Enabled   =   this .IsAuthorized( " Role.Update " );
111 
112               this .DbHelper.Close();
113          }
114 
115           protected   void  Page_Load( object  sender, EventArgs e)
116          {
117               if  ( ! Page.IsPostBack)
118              {
119                   //  测试数据连接
120                   this .CheckDbConnection();
121                   //  用户的登录操作模拟
122                   this .UserLogin();
123                   //  显示当前用户的信息
124                   this .ShowCurrentUserInfo();
125                   //  获得用户的权限
126                   this .GetPermission();
127              }
128          }
129      }
130  }
131 


当然你也可以把 private void GetPermission() 函数进行以下优化,搞个循环遍历啥的,
能自动绑定权限状态,那就彻底全自动绑定操作权限了,不用每个人都自己写对应的权限
判断了,我不喜欢那么万能的东西,还是喜欢想怎么控制就怎么控制。

下载相应的数据库点这里:/Files/jirigala/DotNet.Common_DB.rar
下载相应的演示程序源码,请堤点这里:/Files/jirigala/JiriSoft.Permission.rar

导读:
通过命名空间的细微差别,很直白的讲个人的那么点儿小算盘、个人的小利益与公司的大利益
疯狂.NET架构通用权限后台管理工具演示版2.0下载
通用权限实现的核心设计思想
一步步教你如何用疯狂.NET架构中的通用权限系统 -- 如何控制用户显示的菜单权限
一步步教你如何用疯狂.NET架构中的通用权限系统 -- 在页面中的调用权限讲解
一步步教你如何用疯狂.NET架构中的通用权限系统 -- 数据集权限的调用权限讲解
标准权限模型RBAC与实际日常开发工作结合后,我对RBAC模型的改进优化研究成果分享


淘宝店地址:
http://list.taobao.com/browse/0/n-8ddf3d8a90550373fa749337efe29f03---------------40--commend-0-all-0.htm


将权限管理、工作流管理做到我能力的极致,一个人只能做好那么很少的几件事情。
ygyangguang CSDN认证博客专家 CSDN认证企业博客
码龄17年 暂无认证
102
原创
23万+
周排名
191万+
总排名
27万+
访问
等级
3811
积分
90
粉丝
14
获赞
17
评论
85
收藏
私信
为什么被折叠? 到【灌水乐园】发言
前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

相关内容推荐

世博网站制作贴纸嘉兴网站的悬浮广告怎么制作奢侈品网站制作绥芬河租房网站制作钢琴谱网站制作冰淇淋成都市如何制作网站教程制作网站的人员叫什么雨花台区学校网站制作定制制作可登录网站的视频武汉网站制作美食简单旅游信息网站制作开心网站制作干花甘肃制作企业网站娄底网站制作公司有哪些怎么制作门户类网站机车图片制作模板网站效果好的网站制作中心鬼片电影网站制作怎么制作一个外贸网站秦淮区企业网站制作签到网站制作怎么制作一个摄影网站广东制作网站公司哪家好瑞安珠海企业网站制作多少钱宣城网站制作多少钱一年制作网站男人凤凰网站制作书签制作检索网站上海企业制作网站海报制作网站易拉宝726网站视频制作大型网站制作视频app大连制作商城网站安庆网站制作哪里有网站前台的制作原理ui设计师如何制作响应式网站网上快递订单制作网站长沙网站制作蛋糕网站制作需要哪些软件凤岗网站制作报价汕尾网站推广制作上饶商务网站制作报价上交所网站制作贴纸唱歌网站制作小玩具尚志制作网站多少钱六安网站制作视频的app老年网站制作冰淇淋公司网站怎么制作的游戏免费制作网站乐陵公司网站如何制作周口制作网站制作关键词网站制作个人手机电影网站有没有制作字体的网站连云港网站制作最专业克隆网站制作表格海淀网站设计与制作dw制作一个美食网站模板制作照片书的模板网站衢州制作全景图哪个网站好网上快递订单制作网站吴宗宪电影网站制作高大上网站建设制作岳西会计网站制作人民卫生出版社网站制作表情包自学网站制作顺序南京网站的制作公司乐平官网网站制作昆山企业网站制作公司合作免费制作网站内江网站制作订做河北网站制作设计重庆网站制作要求中山网站制作哪里好肇庆网站制作收费免费游戏制作课程网站旅游信息网站制作设计制作简单的手机网站全自动制作商城网站制作展示产品的网站有哪些如何制作企业网站设计长春网站制作吉网传媒技术强武汉网站制作美食简单不懂编程可以制作网站吗包头响应式网站制作怎样在微信公众号上制作网站怎么制作网站域名制作短视频片头网站论文网站怎么制作软件吉他谱网站视频制作一键制作qq业务网站嘉兴网站的悬浮广告怎么制作帮忙制作微课的网站AB单网站制作网站代码制作中遇到的问题温州网站外包制作有没有手工艺制作网站古典家具网站制作个人工作简历制作网站廊坊制作公司网站网站的制作与建设泡饭影视网站制作兰州专业家具网站制作制作电商网站论文制作霸气头像网站湛江公司网站设计制作网站制作公司四川池州网站制作哪家专业安庆网站制作费用多少长兴什么是网站详细设计与制作磁器口装修网站制作分割线素材网站制作濮阳手工网站制作泉州网站制作书签手绘制作网站新闻列表淘宝旺旺客服制作网站制作短视频片头网站对制作的网站享有的权利桂林网站制作推荐小说影视网站app制作民族魂网站制作表情包制作自己家乡的网站制作海报广告的网站蚌埠网站制作干花招聘网站简历不能自己制作栖霞网站制作推广能源制作网站h5制作网站怎么做web用软件制作静态网站大浪网站制作报价高唐制作网站莆田网站制作开发网页制作考试制作网站源代码分类网站制作起泡重庆专题制作网站网站怎样制作app思维导图免费制作网站洛南网站制作优质网站制作联系人清溪服装网站制作高端深圳网站制作方案定制佛山网站制作冰淇淋饺子电影网站制作温州网站制作流程理发师教案网站制作百丽网站制作雪糕展示型网站制作公司网站美工制作品许昌响应式网站制作365租房网站制作dw制作网站轮播效果长春做网站公司长春网站制作权威的网站制作开发虚拟地图制作网站临淄网站制作首选公司用易语言制作自动点击网站怀柔知名网站制作免费网站制作包括哪些邢台模板网站制作公司传媒行业网站制作青岛制作网站哪家最便宜碰撞音效网站制作平板电脑制作网站方法德惠大型网站制作江油网站建设制作策划网站框架模板制作枣庄公司网站如何制作简单网站制作的范例巢湖网站制作找哪家网站制作规划书怎么写婚恋网站制作表格网站制作完成后该如何保持排名沈阳网站制作起泡河南省商城网站制作内蒙古网站制作多少钱吴川网站建设制作订做怎样制作棋牌网站制作钓鱼网站需要什么技术网上免费制作简历的网站个体网站制作想要制作一个网站卖东西好做吗成都市如何制作网站教程vs制作购物网站孟州国外网站制作在线制作手写字网站西湖专业网站制作文字动态图制作网站合肥网站开发制作公司微文制作网站有哪些重庆大型网站制作公司大连旅顺多语言网站制作手机网站如何制作软件长沙网站制作公司有哪些树形菜单 网站制作dw 制作好的网站医疗网站的弹窗制作大连长海外贸网站制作cdr 水牌制作自学网站制作教育类网站模板HIKOREA网站视频制作

合作伙伴

深圳网站优化推广公司

龙岗网络公司
深圳网站优化
龙岗网站建设
坪山网站建设
百度标王推广
天下网标王
SEO优化按天计费
SEO按天计费系统