通用权限管理系统组件 (GPM - General Permissions Manager) 中实现系统参数配置保存,附源码...

   其实GPM不仅仅是权限管理系统,其实更是一个灵活的轻量级快速.Net开发架构,他需要最短的学习时间,可以最快速入门,并不是通过玩技术来实现我们的日常需求。GPM中只要写一套代码,就可以实现在多种数据库上的稳定运行。

   下面我们给大家参考一下如何在GMP中实现系统参数配置的保存功能,开发界面见下图:

吉日嘎拉,通用权限管理系统组件

数据库中的保存效果如下:

吉日嘎拉,通用权限管理系统组件

配置文件中的保存效果如下:

吉日嘎拉,通用权限管理系统组件

 

实现代码的优点就是,1套代码支持多种数据库,1个参数基本上1行代码就可以实现保存,读取功能,代码的量少稳定性高。见参考代码如下:

  1  // -----------------------------------------------------------------
  2  //  All Rights Reserved , Copyright (C) 2012 , Hairihan TECH, Ltd. 
  3  // -----------------------------------------------------------------
  4 
  5  using System;
  6  using System.Data;
  7  using System.Windows.Forms;
  8 
  9  namespace DotNet.WinForm
 10 {
 11      using DotNet.Utilities;
 12      using DotNet.Business;
 13 
 14      ///   <summary>
 15       ///  FrmSystemSecurity
 16       ///  用户登录系统
 17       ///  
 18       ///  修改纪录
 19       ///  
 20       ///         2012.02.12 版本:1.1 JiRiGaLa 功能实现。
 21       ///         2012.01.19 版本:1.0 JiRiGaLa 整理文件。
 22       ///         
 23       ///  版本:1.0
 24       ///
 25       ///   <author>
 26       ///          <name> JiRiGaLa </name>
 27       ///          <date> 2012.02.12 </date>
 28       ///   </author>  
 29       ///   </summary>
 30       public  partial  class FrmSystemSecurity : BaseForm
 31     {
 32          public FrmSystemSecurity()
 33         {
 34             InitializeComponent();
 35         }
 36 
 37          ///   <summary>
 38           ///  从数据库读取当前配置情况
 39           ///   </summary>
 40           private  void GetParameter()
 41         {
 42              string parameter =  string.Empty;
 43             parameter = DotNetService.Instance.ParameterService.GetParameter( this.UserInfo,  " System "" SystemSecurity "" ServerEncryptPassword ");
 44              if (! string.IsNullOrEmpty(parameter))
 45             {
 46                  this.chkServerEncryptPassword.Checked = parameter.Equals( true.ToString());
 47             }
 48             parameter = DotNetService.Instance.ParameterService.GetParameter( this.UserInfo,  " System "" SystemSecurity "" PasswordMiniLength ");
 49              if (! string.IsNullOrEmpty(parameter))
 50             {
 51                  this.nudPasswordMiniLength.Value =  int.Parse(parameter);
 52             }
 53             parameter = DotNetService.Instance.ParameterService.GetParameter( this.UserInfo,  " System "" SystemSecurity "" NumericCharacters ");
 54              if (! string.IsNullOrEmpty(parameter))
 55             {
 56                  this.chkNumericCharacters.Checked = parameter.Equals( true.ToString());
 57             }
 58             parameter = DotNetService.Instance.ParameterService.GetParameter( this.UserInfo,  " System "" SystemSecurity "" PasswordCycle ");
 59              if (! string.IsNullOrEmpty(parameter))
 60             {
 61                  this.nudPasswordChangeCycle.Value =  int.Parse(parameter);
 62             }
 63             parameter = DotNetService.Instance.ParameterService.GetParameter( this.UserInfo,  " System "" SystemSecurity "" CheckOnLine ");
 64              if (! string.IsNullOrEmpty(parameter))
 65             {
 66                  this.chkCheckOnLine.Checked = parameter.Equals( true.ToString());
 67             }
 68             parameter = DotNetService.Instance.ParameterService.GetParameter( this.UserInfo,  " System "" SystemSecurity "" AccountMinimumLength ");
 69              if (! string.IsNullOrEmpty(parameter))
 70             {
 71                  this.nudAccountMinimumLength.Value =  int.Parse(parameter);
 72             }
 73             parameter = DotNetService.Instance.ParameterService.GetParameter( this.UserInfo,  " System "" SystemSecurity "" PasswordErrowLockLimit ");
 74              if (! string.IsNullOrEmpty(parameter))
 75             {
 76                  this.nudPasswordErrowLockLimit.Value =  int.Parse(parameter);
 77             }
 78             parameter = DotNetService.Instance.ParameterService.GetParameter( this.UserInfo,  " System "" SystemSecurity "" PasswordErrowLockCycle ");
 79              if (! string.IsNullOrEmpty(parameter))
 80             {
 81                  this.nudPasswordErrowLockCycle.Value =  int.Parse(parameter);
 82             }
 83         }
 84 
 85          ///   <summary>
 86           ///  将设置保存到数据库
 87           ///   </summary>
 88           private  void SaveParameter()
 89         {
 90             DotNetService.Instance.ParameterService.SetParameter( this.UserInfo,  " System "" SystemSecurity "" ServerEncryptPassword "this.chkServerEncryptPassword.Checked.ToString());
 91             DotNetService.Instance.ParameterService.SetParameter( this.UserInfo,  " System "" SystemSecurity "" PasswordMiniLength "this.nudPasswordMiniLength.Value.ToString());
 92             DotNetService.Instance.ParameterService.SetParameter( this.UserInfo,  " System "" SystemSecurity "" NumericCharacters "this.chkNumericCharacters.Checked.ToString());
 93             DotNetService.Instance.ParameterService.SetParameter( this.UserInfo,  " System "" SystemSecurity "" PasswordCycle "this.nudPasswordChangeCycle.Value.ToString());
 94             DotNetService.Instance.ParameterService.SetParameter( this.UserInfo,  " System "" SystemSecurity "" CheckOnLine "this.chkCheckOnLine.Checked.ToString());
 95             DotNetService.Instance.ParameterService.SetParameter( this.UserInfo,  " System "" SystemSecurity "" AccountMinimumLength "this.nudAccountMinimumLength.Value.ToString());
 96             DotNetService.Instance.ParameterService.SetParameter( this.UserInfo,  " System "" SystemSecurity "" PasswordErrowLockLimit "this.nudPasswordErrowLockLimit.Value.ToString());
 97             DotNetService.Instance.ParameterService.SetParameter( this.UserInfo,  " System "" SystemSecurity "" PasswordErrowLockCycle "this.nudPasswordErrowLockCycle.Value.ToString());
 98         }
 99 
100          ///   <summary>
101           ///  从当前配置文件显示到界面上
102           ///   </summary>
103           private  void GetConfig()
104         {
105              this.chkServerEncryptPassword.Checked = BaseSystemInfo.ServerEncryptPassword;
106              this.nudPasswordMiniLength.Value = BaseSystemInfo.PasswordMiniLength;
107              this.chkNumericCharacters.Checked = BaseSystemInfo.NumericCharacters;
108              this.nudPasswordChangeCycle.Value = BaseSystemInfo.PasswordChangeCycle;
109              this.chkCheckOnLine.Checked = BaseSystemInfo.CheckOnLine;
110              this.nudAccountMinimumLength.Value = BaseSystemInfo.AccountMinimumLength;
111              this.nudPasswordErrowLockLimit.Value = BaseSystemInfo.PasswordErrowLockLimit;
112              this.nudPasswordErrowLockCycle.Value = BaseSystemInfo.PasswordErrowLockCycle;
113         }
114 
115          ///   <summary>
116           ///  当窗体加载时执行的方法,
117           ///  这个方法会自动处理鼠标的忙碌状态等等
118           ///   </summary>
119           public  override  void FormOnLoad()
120         {
121              this.GetConfig();
122              this.GetParameter();
123         }
124 
125          ///   <summary>
126           ///  将配置文件保存到XML文件里
127           ///   </summary>
128           private  void SaveConfig()
129         {
130             BaseSystemInfo.ServerEncryptPassword =  this.chkServerEncryptPassword.Checked;
131             BaseSystemInfo.PasswordMiniLength = ( int) this.nudPasswordMiniLength.Value;
132             BaseSystemInfo.NumericCharacters =  this.chkNumericCharacters.Checked;
133             BaseSystemInfo.PasswordChangeCycle = ( int) this.nudPasswordChangeCycle.Value;
134             BaseSystemInfo.CheckOnLine =  this.chkCheckOnLine.Checked;
135             BaseSystemInfo.AccountMinimumLength =  ( int) this.nudAccountMinimumLength.Value;
136             BaseSystemInfo.PasswordErrowLockLimit = ( int) this.nudPasswordErrowLockLimit.Value;
137             BaseSystemInfo.PasswordErrowLockCycle = ( int) this.nudPasswordErrowLockCycle.Value;
138 
139              //  保存用户的信息
140               #if (!DEBUG)
141                 UserConfigHelper.SaveConfig();
142              #endif
143         }
144 
145          ///   <summary>
146           ///  保存系统设置
147           ///   </summary>
148           private  void SaveSystemConfig()
149         {
150              //  设置鼠标繁忙状态,并保留原先的状态
151              Cursor holdCursor =  this.Cursor;
152              this.Cursor = Cursors.WaitCursor;
153              try
154             {
155                  this.SaveParameter();
156                  this.SaveConfig();
157 
158                  //  是否需要有提示信息?
159                   if (BaseSystemInfo.ShowInformation)
160                 {
161                      //  批量保存,进行提示
162                      MessageBox.Show(AppMessage.MSG0011, AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Information);
163                 }
164             }
165              catch (Exception ex)
166             {
167                  this.ProcessException(ex);
168             }
169              finally
170             {
171                  //  设置鼠标默认状态,原来的光标状态
172                   this.Cursor = holdCursor;
173             }
174         }
175 
176          private  void btnConfirm_Click( object sender, EventArgs e)
177         {
178              //  保存系统设置
179               this.SaveSystemConfig();
180         }
181 
182          private  void btnCancel_Click( object sender, EventArgs e)
183         {
184              this.Close();
185         }
186     }
187 }

 

 

转载于:https://www.cnblogs.com/jirigala/archive/2012/02/12/2348123.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值