前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【自然框架】之通用权限的Demo(一):角色的添加和修改

【自然框架】之通用权限的Demo(一):角色的添加和修改

作者头像
用户1174620
发布2018-02-26 14:36:53
8510
发布2018-02-26 14:36:53
举报

      非常抱歉,我是一个靠激情来工作的人,有心情做什么多快,没心情的时候什么都不爱做。最近很烦,所以速度也很慢。原本打算周一拿出来Demo的,结果延迟了现在。希望大家多多包含。这个Demo并不完整,目前权限方面只实现了角色的添加和修改,其他的还没有实现。我还是一点一点来吧,我是怕如果我等到Demo更完善才拿出来的话,我会承受不了,而放弃这个计划。所以,咬咬牙,一步一步来。后续功能的Demo也会尽快拿出来,一两天吧。

一、 环境       Vs2008、.net Framework 2.0、asp.net(c#)、SQL Server 2000 。抱歉,没有VS2005的Demo

二、 项目结构       1、配置信息管理程序和权限的管理

            这里就是自然框架里的配置信息的管理程序,我就是通过这个程序来管理配置信息,也可以通过这个程序来完成项目中的基本功能(比如增删改查)。当然这个还没有完全做好。             权限管理只是自然框架的一个部分。

      2、登陆人员信息管理

            这是一个独立的项目,这个项目比较简单,就是要实现用户的登录、登出、保存登陆状态、保存用户的常用信息。为什么要单独设置一个项目呢,原因很简单,这一块基本可以独立出来,就是说当第一个项目做好之后,再写第二个项目的时候,只需要引用这个dll文件就可以了。不用在重新写一遍(或者copy)用户登录方面的代码了。

      3、通用类库(包括自定义控件)             这个指的是数据访问函数库、常用函数库、自定义控件等。

三、 UI里的基类

            我是比较懒的,所以我在UI里面也设置了基类,就是说把公用的代码放在了基类里面,这样就可以省去写很多的重复代码的烦恼了。

四、 角色管理       写了这么多和角色无关的,不知道大家烦了没有。可能有一些人的方式是先设计好了角色,然后给客户使用。可能在设计项目的时候就把角色设计好了,或者在编码之前,或者在交给用户测试(使用)之前就设计好了角色。而我呢,我的项目的角色,完全有客户自己设置。做设计、写代码的时候根本就不用考虑权限的问题。所以我觉得应该先演示一下角色是如何来由客户维护的。       这里主要说的就是角色的添加、修改。而且粒度也比较粗,只演示了权限到节点、权限到按钮,并没有加入权限到字段、资源过滤和“拒绝”的功能。我想还是一步一步的来,因为是要通用,所以要考虑到很多的情况,有简单的需求(粗粒度),也有复杂的需求(细粒度、资源过滤、权限到字段等)。所以我想还是“步步为营”的好。另外这几天心情很乱,而我又是一个感情用事的人,心情不好,速度就很慢了,望大家谅解。

(“节点”后面的那个文本框不用输入信息。上面的那个三行的table,就是表单控件自动生成的。节点是可以展开和收拢的)

五、感谢liyf 把我写的这几章的内容整理成了word文档,而且加上了修饰。说起来很惭愧,我是先在word里面编写、画图。只是比较懒,word里面并没有做任何的修饰,而是在写博文的时候才在“在线编辑”里面做一些修饰。所以我想我还是把word原稿也提供下载吧。呵呵。金色海洋通用权限.rar

六、 后续的功能也会继续完善的,写好一块就发出来一块。大家不会嫌我墨迹吧。

七、 注意事项  修改连接字符串,打开web.config,修改“ConnectionString”后面的内容  Demo需要的Dll都在bin文件夹下面,如果提示没有找到dll文件,请修改引用路径,或者重新引用。  数据库说明文档使用Excel 2007,所以如果您没有安装office 2007的话,可能在打开“数据文档、建表”的时候发生错误,不过这个不影响角色的演示,所以暂时先不修改了。以后会改成连接Excel 2003 的方式。  使用的时候,需要输入用户名和密码,管理员的用户名:admin,密码:123

八、  FAQ       1、 这么多的框框要选择,如果我要是给总裁做角色,而总裁什么都能做,那我岂不是要累死?             这个我也想到了,我采用了“联动”的方式,就是说如果您在一级节点的框框里打上了对号,那么他的所有子节点、子子节点,和对应的按钮的框框都会被打上对号。如果你去掉了一级节点的对号,那么子节点和按钮的对号也会跟着去掉的。

      选择二级、三级、n级节点都是一样的原理。而且同时会把上一级的节点的框框也打上对号。没有上一级,哪来的这一级呀。

      2、 吉日嘎拉的“权限表”和Role_RoleButton表是什么关系?             我的理解:不一定正确哦。             Role_RoleButton = 一少半的吉日嘎拉的“权限表”。             或者Role_RoleButton + Role_RoleResource + Role_ResourceControlCase = 一多半的吉日嘎拉的“权限表”。             我为什么分了这么多的表而不用一个表呢?一是表里的记录会很多,合成一个表记录会更多,要考虑一些效率的问题。二是单一职责,一个表就是记录一个方面的事情,合与不合要从多个角度去考虑,应该没有定论,也不应该说我分开成多个表了就是瞎搞吧。

      3、 这个Demo怎么这么别扭呢?             我没有按照三层的方式来写,也没有按照MVC的方式来写,也没有使用实体类(不知道人员管理的那个算不算)。所以您可能看着很别扭。其实这个就是我写项目的方式。             请不要按照三层等标准来检查这个Demo,否则的话,您找到的问题,如果用A4纸打印出来的话,可能会有一厘米厚。             Demo的很多地方都没有完善,甚至没有实现其功能。

九、Demo和数据库的下载:通用权限相关文档的下载【2009.6.15更新】

============================================

ps:

这里不欢迎吉日嘎拉!他的回复,无论什么内容,一律删除。原因如下: 1、 他喜欢pk,喜欢给自己找个对手,练习他的pk水平,他的心里素质很好。但是我不喜欢pk,我心里素质很差,所以希望他能放过我。如果还来的话,那我就只好删回复了。 2、 他的回复对于我来说没有任何意义和帮助。这个不是谁高谁低的问题,而是他的回复很泛泛、很空洞。从来不说细节,从来不给出一个具体的帮助,没有一个细节说明。好像他在做广告,说他如何如何厉害,但是要我给他交学费,然后才能告诉我。对不起,我很穷,交不起学费。

3、 他一出现,就会引出来其他的人对他的攻击。因为在他的帖子里,对他不利的帖子都被他给删除了,所以有些人借此机会就到我这里来了。要吵出去吵,别在这里烦我,谢谢。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2009-06-15 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档