本文介绍如何利用代码生成工具Database2Sharp快速生成基于SqlSugar框架的Winform界面项目,一个完整生成后直接可以运行跑起来的Winform系统界面。
PS:给大家推荐一个C#开发可以用到的界面组件——DevExpress WinForms,它能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!
DevExpress技术交流群8:523159565 欢迎一起进群讨论
1. 代码生成工具Database2Sharp的SqlSugar框架项目生成
要了解项目的快速生成,需要下载《代码生成工具Database2Sharp》工具后进行使用,该工具支持多种框架的项目开发,我们这里以SqlSugar开发框架的项目生成为例介绍。
先展开数据库列表,并从数据库列表右键选择对应的【SqlSugar框架代码生成】或者在工具栏中快速选择操作,如下界面所示。
在弹出的对话框中选择对应的表进行框架代码和WinForms界面代码的一并生成(默认直接生成可运行的WInform界面项目)。
从数据库列表中选择部分表进行测试生成。
一步步生成项目代码,完成后打开对应的目录,可以看到对应的代码分不同的目录进行存放,其中包括一些DLL应用放在Reference目录中,核心服务层在SugarPojectCore目录中,Winform界面端项目在SugarPojectWin目录中。
默认很多相关的类库引用,我们使用Nugget上的引用,默认打开项目后,相关的引用DLL的包文件,VS会自动下载到包文件夹中,如下目录所示。
生成后的项目,所有的引用以及相关的结构均以SqlSugar项目标准配备,直接可以运行测试界面效果的了。
2. SqlSugar框架项目运行界面及项目代码结构
我们生成刚才的项目,使用VS2022打开后,会看到核心服务层SugarPojectCore项目,以及Winform界面端SugarPojectWin项目两个。
SugarPojectCore的项目结构如下所示,其中包括了SqlSugar项目框架区分的接口层、实体模型层、服务实现层。
而WinForms界面端SugarPojectWin项目已经生成了对应的默认界面文件,项目文件结构如下所示。
项目我们附带了一些公用性质的界面文件,如系统登录界面、多文档主界面,以及一些如注册、修改密码、关于的常规界面。
而其中下面红框中标识的是我们根据表信息生成的默认界面文件。
不修改任何文件,我们以WinForms界面作为默认项目进行编译测试,首先进入登录界面窗体,如下所示。
我们在系统登录的处理中,模拟了登录的操作,直接确认进入主界面。
单击主窗体工具栏,可以打开其中任意一个刚才生成的窗体界面文档,如下所示。
所有的这些工具栏菜单,我们是根据我们所选择的表进行自动生成相关的菜单信息,如名称及窗体的地址展示,这样在单击某个按钮运行后,就可以启动对应的窗体界面了。
在我们没有做任何编码工作的前提下,我们就可以直观的感受到代码生成效果的魅力,界面效果直接可以展示出相关表的业务数据,我们实际使用的时候,进行一些界面效果的微调及处理就可以了。
默认生成的代码,具有了常规查询(多个条件综合查询),高级查询、新建、编辑、 导入导出的功能效果了,对我们快速构建客户业务功能,具有非常便利的集成处理。
高级功能,我们自动根据实体类的属性信息进行构建相关的通用界面的,可以支持更强大的条件筛选查询。
导入操作界面如下所示。
系统默认生成的代码包含了一些导入的处理代码,可以根据实际需要进行裁剪优化。
默认系统整合了分页控件,具有通用统一的界面效果,包括常规的窗体功能操作,以及一些打印列表、导出PDF、设置显示列、复制选择列表表数据等功能。
如果默认综合条件查询的方式,不太适合实际的业务查询,也可以在代码生成工具中进行定制生成,如下操作所示,选择【WinForm界面代码生成】【SqlSugar框架WinForm界面生成】即可。
在【SqlSugar框架WinForm界面生成】中定制界面的相关内容,然后生成替换原来的界面窗体文件即可。
默认系统同时生成一些通用的界面效果,直接整合运行都可以看到,如注册软件界面。
修改密码界面,在系统管理模块中入口操作。
系统托盘中展示系统关于信息界面。
弹出关于信息的界面效果。
另外系统集成了皮肤展示及更换的保存处理,如下界面所示,可以自由更换相关的系统皮肤并存储,下次自动记住选择。
默认生成的编辑或者新增界面,是单列展示的,可以根据需要进行微调,微调的时候,鼠标按住控件拖动即可快速调整位置,非常方便。
生成的系统菜单中,也整合了退出系统、重新登录两个常见的菜单,如果需更多的菜单,可以修改代码进行加入即可。
以上我们所有的界面效果,我们均未改动任何代码,直接可以生成相关的整个Winform界面项目,以及后端的服务层部分内容,这样对于我们快速理解代码生成工具的便利,以及高效开发相关的项目,有很好的认识。
而且我们实际项目的标准来生成基础案例,我们在开发的时候,不用过多的调整就可以直接运用在客户项目中了。
本文转载自:博客园 - 伍华聪
更多DevExpress线上公开课、中文教程资讯请上中文网获取
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明:文章转载自:DevExpress控件中文网 [https://www.devexpresscn.com/]
本文地址:https://www.devexpresscn.com/post/4079.html