WinForm框架开发教程 - 窗体基类的用户身份信息的缓存和提取_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > WinForm框架开发教程 - 窗体基类的用户身份信息的缓存和提取

WinForm框架开发教程 - 窗体基类的用户身份信息的缓存和提取

 2021/10/18 13:01:49  AABBbaby  程序员俱乐部  我要评论(0)
  • 摘要:在WinForm开发中,有时候为了方便,需要把窗体的一些常规性的数据和操作函数进行封装,通过自定义基类窗体的方式,可以实现这些封装管理,让我们的框架统一化、简单化的处理一些常规性的操作,如这里介绍的用户身份信息的缓存和提取。通过基类的封装,可以大大减少常规性的代码,这个也是基类封装的目的所在。点击获取DevExpressWinform控件最新版一、用户登录获得身份信息并缓存用户登录界面,通过获得用户的账号密码进行登录验证,如下界面所示。登录过程如下所示,成功后获得用户的身份信息并缓存起来待用
  • 标签:for 用户 开发 教程 winform 缓存

WinForm开发中,有时候为了方便,需要把窗体的一些常规性的数据和操作函数进行封装,通过自定义基类窗体的方式,可以实现这些封装管理,让我们的框架统一化、简单化的处理一些常规性的操作,如这里介绍的用户身份信息的缓存和提取。通过基类的封装,可以大大减少常规性的代码,这个也是基类封装的目的所在。

点击获取DevExpress Winform控件最新版
一、用户登录获得身份信息并缓存

用户登录界面,通过获得用户的账号密码进行登录验证,如下界面所示。

class="img-thumbnail" src="https://image.evget.com/2021/09/18/1qyqq4wtywoq9y4ql.png" style="vertical-align: middle; border-width: 1px; border-style: solid; border-color: #dee2e6; max-width: 800px; height: auto; line-height: 1.8;" alt="窗体基类的用户身份信息的缓存和提取 - 图1">

登录过程如下所示,成功后获得用户的身份信息并缓存起来待用,毕竟系统界面,大多数都需要获得用户的信息的。

窗体基类的用户身份信息的缓存和提取 - 图2

获得用户的身份信息后,调用SetLoginInfo设置缓存数据,以备后用。

窗体基类的用户身份信息的缓存和提取 - 图3

通过上面的处理,用户身份信息,权限信息,角色信息,都可以一次性获得,供各个界面上使用了。

二、基类窗体的用户身份提取

这里的LoginUserInfo是窗体基类的一个属性,这个属性通过两种方式获得,一个是通过用户在调用窗体显示前进行指定,一种是通过基类自动把缓存里面的用户对象赋值。

如下面的代码就是界面基类BaseForm的部分代码。

?

namespace WHC.Framework.BaseUI
{
/// <summary>
/// 常规界面基类
/// </summary>
public partial class BaseForm : DevExpress.XtraEditors.XtraForm, IFunction
{
public event EventHandler OnDataSaved;//子窗体数据保存的触发

public BaseForm()
{
InitializeComponent();

//为了保证一些界面控件的权限控制和身份确认,以及简化操作,在界面初始化的时候,从缓存里面内容(如果存在的话)
//继承的子模块,也可以通过InitFunction()进行指定用户相关信息
this.LoginUserInfo = Cache.Instance["LoginUserInfo"] as LoginUserInfo;
this.FunctionDict = Cache.Instance["FunctionDict"] as Dictionary<string, string>;
}

?

这样界面基类实例化的时候,就会自动获取用户信息了,这个操作类似于Web领域里面的Session操作,只要存储/获取的键值保存一致即可。

窗体基类的用户身份信息的缓存和提取 - 图4

用户组件,也可以通过这样类似的方式定义一个基类,以后所有自定义用户组件,就很方便获得用户的身份信息了,如下代码所示。

窗体基类的用户身份信息的缓存和提取 - 图5

在窗体界面上,可以放置很多模块,模块通过窗体获得用户身份信息、角色信息等进行初始化的判断。

窗体基类的用户身份信息的缓存和提取 - 图6

最终在主体界面中整合的是一个个模块,每个模块里面又有不同的窗体界面可供使用,但是都能通过缓存获得用户身份信息,数据处理起来就非常方便了。

窗体基类的用户身份信息的缓存和提取 - 图7

对于业务报销信息,我们可以根据用户身份信息,迅速获得对应的记录列表,以及在修改的时候,记录用户的身份信息。

窗体基类的用户身份信息的缓存和提取 - 图8

如新增一条主表记录的时候,那么可以弹出一个新的界面进行数据的维护处理,界面如下所示。

窗体基类的用户身份信息的缓存和提取 - 图9

或者类似下面的界面处理。

窗体基类的用户身份信息的缓存和提取 - 图10

DevExpress WinForm界面控件|?下载试用

DevExpress?WinForm拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!

本文转载自:博客园 - 伍华聪


DevExpress技术交流群4:715863792??????欢迎一起进群讨论

更多DevExpress线上公开课、中文教程资讯请上中文网获取

?

发表评论
用户名: 匿名