加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

参数服务组件 Example 程序

发布时间:2020-12-17 01:25:14 所属栏目:安全 来源:网络整理
导读:组件的最大的优点在于不断改进完善,重复利用。我们开发项目时,经常会遇到,系统默认每页显示50条记录,但是用户 A用的显示器分辨率比较小,他希望默认是显示30条记录,显示效果正常。用户B用的是最新的,最大的显示器,他希望默 认能看到每页200条记录。还

组件的最大的优点在于不断改进完善,重复利用。我们开发项目时,经常会遇到,系统默认每页显示50条记录,但是用户
A用的显示器分辨率比较小,他希望默认是显示30条记录,显示效果正常。用户B用的是最新的,最大的显示器,他希望默
认能看到每页200条记录。还有可能他们关注的重点不同,希望系统默认登录系统的主页显示都不一样。
? 菜鸟可能会想到,这是需求互相冲突嘛,无法实现嘛,其实类似的需求会很多,这时候,我希望能有一个配置参数的服务
方法,默认采用系统的配置参数,若用户设置了自己的个性化需求,就按客户的设置显示数据。
? 当然我希望这个参数服务类,有非常简单的2个方法,一个是SetParameter只要调用就可以,会将参数写入到数据库,
若已经存在这个设置,他会进行覆盖,是比较智能化的,还有一个就是读取的方法GetParameter,很方便能读取设置。
? 当然我们的参数服务,可以将设置保存到本地文件中,也可以保存到运程的数据库服务器上,可以通过WebService、
Remoting或者WCF等方式运行是比较理想的。
? 有一些方便灵活的软件组件,开发软件会轻松一些,不用每个人都摸索、开发、测试,分工明确,责任明确会大大提
高软件的产量、质量,对于组件来说,功能定位明确也至关重要,可以不断完善提高这个组件的重复利用,提高服用率、
提高生产率。
? 以下是参考页面,及样例代码。

设置参数


读取参数效果,当然也可以保存其他类型的数据,例如URL等。

代码效果:(主要目的是非常方便调用,最好只是一行代码就可以了,代码太多了,就没有组建的意义了,不是简化调用了)
BaseSystemInfo.UserInfo 为当前操作员的信息,谁破坏了系统,是谁干的,总需要有个依据吧,最起码能有个IP地址吧。
若是谁搞破坏了,警察叔叔来抓,还好有个依据。

?1

private ? void ?btnSet_Click( object ?sender,?EventArgs?e)
?2

{
?3

??
//?本地模式
?4

??ParameterService.Instance.SetParameter(BaseSystemInfo.UserInfo,?"Application",?"ApplicationPeerPage",?"PeerPage",?this.txtSetApplication.Text);
?5

??ParameterService.Instance.SetParameter(BaseSystemInfo.UserInfo,?
"User",?"UserAPeerPage",?this.txtSetA.Text);
?6

??ParameterService.Instance.SetParameter(BaseSystemInfo.UserInfo,?
"UserBPeerPage",?this.txtSetB.Text);
?7


?8

??
//?远程模式,采用接口、反射、工厂模式实现
?9

??ServiceManager.Instance.ParameterService.SetParameter(BaseSystemInfo.UserInfo,?this.txtSetApplication.Text);
10

}

11


12

private ? void ?btnGet_Click( object ?sender,?EventArgs?e)
13

{
14

??
this.txtGetApplication.Text?=?ParameterService.Instance.GetParameter(BaseSystemInfo.UserInfo,?"PeerPage");
15

??
this.txtGetA.Text?=?ParameterService.Instance.GetParameter(BaseSystemInfo.UserInfo,?"PeerPage");
16

??
this.txtGetB.Text?=?ParameterService.Instance.GetParameter(BaseSystemInfo.UserInfo,?"PeerPage");
17

}

当然以上代码,不管是B/S,C/S运行模式下,都是可以调用的。

将权限管理、工作流管理做到我能力的极致,一个人只能做好那么很少的几件事情。

posted on 2008-10-22 13:17 不仅仅是通用权限设计 阅读(1431) 评论(13) 编辑 收藏

评论

#1楼   回复  引用  ?? 好好努力^ ^

2008-10-22 13:44 | 王Sir[未注册用户]

#2楼  回复 引用 查看 ??

与君共勉之。
2008-10-22 13:54 | Wuya.net? ?????

#3楼  回复 引用 查看 ??

嗯 受益。

非常希望能够提供源码,会有很好的学习作用。
2008-10-22 14:13 | 小狼壮壮? ?????

#4楼  回复 引用 查看 ??

当用户A一直用的高分辨率显示器,习惯了一页200条,当一天他到分辨率小的上时,就显示不了了,当他调过来,但他下一次到原来的高分辨率机器上时又挂掉了....IP地址应该也无效,好多是DHCP..,不是DHCP换机器也很正常,总不能换个显示器,换个分辨率就要重新设置一下吧..
2008-10-22 14:32 | 吴峰? ?????

#5楼[楼主]  回复 引用 查看 ??

很少碰到经常换电脑的,当然不是所有的系统都适合这么设计,但是,
在机关工作的工作人员,很少天天换显示器,我已经2年没换电脑了,
天天用这个宽屏的显示器,当然软件有记忆功能比较好,不能每次都
跑到后台设置去设置每页显示几条,而是能记录用户的当前选择是比
较友善的。

宝马车,夏利车都是车,他们都有4个轮子,4个门,但是他们的差别
在于每个细节上。
为什么 cnblogs 比其他博客好用,大家也应该有所体会。
2008-10-22 15:21 | 吉日嘎拉? ?????

#6楼  回复 引用 查看 ??

要设置的参数有好多好多,比如同一个列表列表,有人想看1、3、5列,有人想看2、4、5、6列,这些都能作参数吗?
2008-10-22 18:22 | 金色海洋(jyk)? ?????

#7楼[楼主]  回复 引用 查看 ??

金色海洋:
你好,这些,可以按权限来处理或者按参数来处理要看你的实际需求,
若是列表里,有些人想看1,3,5,有些人想看 2、4、6,我以前是
按参数来处理的,
1:true,
2:false,
3:true,
4:false,
5:true.
6:false
我会这么处理,程序中读取参数配置情况,然后设置列表的Visible属性。
当然参数也可以进行批量操作保存,批量读取,一个个读取那效率是低一些。
2008-10-22 18:33 | 吉日嘎拉? ?????

#8楼  回复 引用 查看 ??

那么如果想要自定义显示顺序呢?
2008-10-22 19:34 | 金色海洋(jyk)? ?????

#9楼[楼主]  回复 引用 查看 ??

金色海洋(jyk):
我平时,很注重数据的排序问题,我的很多数据都有一个字段
叫 SortCode,可以对数据进行排序用的,这个字段里可以保存
参数的排序顺序,与我的序列组件可以组合起来用的。
2008-10-22 19:48 | 吉日嘎拉? ?????

#10楼  回复 引用 查看 ??

不是数据的排序,而是显示的字段的顺序,比如“产品名称”是放在第一列还是第二列,还是放在最后。可能每个人的习惯都不太一样。
2008-10-22 22:40 | 金色海洋(jyk)? ?????

#11楼[楼主]  回复 引用 查看 ??

这个要看你了,我以前实现过这个功能,是弹出一个页面,设置
列的顺序及是否显示,然后结果保存到参数里实现的。
2008-10-23 09:33 | 吉日嘎拉? ?????

#12楼  回复 引用 查看 ??

我怎么感觉,其实就是底层的方法多个参数。而这个参数怎么获取多了一些技巧。感觉这个就叫组件,有点牵强。关注吧,希望有好的思路。
2008-10-23 13:40 | ∈鱼杆? ?????

#13楼[楼主]  回复 引用 查看 ??

你说我们还能做出什么厉害的组件?又不是科学家,也不是技术牛人, 只能是最普通老百姓的技术,搞几下而已了。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读